From 6c77121fba6a9ca68e8a8ad39405542940999d15 Mon Sep 17 00:00:00 2001 From: ticktock35 Date: Mon, 15 Dec 2008 05:13:40 +0000 Subject: [PATCH] opkg: prevent segfault if option is not found git-svn-id: http://opkg.googlecode.com/svn/trunk@93 e8e0d7a0-c8d9-11dd-a880-a1081c7ac358 --- libopkg/opkg.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/libopkg/opkg.c b/libopkg/opkg.c index a749bf9..b94ad55 100644 --- a/libopkg/opkg.c +++ b/libopkg/opkg.c @@ -295,7 +295,7 @@ opkg_get_option (opkg_t *opkg, char *option, void **value) void opkg_set_option (opkg_t *opkg, char *option, void *value) { - int i = 0; + int i = 0, found = 0; opkg_option_t *options; opkg_assert (opkg != NULL); @@ -311,11 +311,18 @@ opkg_set_option (opkg_t *opkg, char *option, void *value) { if (strcmp (options[i].name, option) == 0) { + found = 1; break; } i++; } + if (!found) + { + /* XXX: Warning: Option not found */ + return; + } + /* set the option */ switch (options[i].type) { -- 2.25.1