summaryrefslogtreecommitdiffstats
path: root/libopkg/opkg_remove.c
diff options
context:
space:
mode:
authorgraham.gower <graham.gower@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>2009-11-26 19:42:00 (EST)
committer graham.gower <graham.gower@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>2009-11-26 19:42:00 (EST)
commit6afed21188df0c417349563621302ec85f44096f (patch)
tree0a4bd7580dad1cfdea65dfcbfc948b3102271ad7 /libopkg/opkg_remove.c
parenta5ef09fae04cd4274542b9f5f052e439e56450fc (diff)
Provide error checking for users of pkg_extract_* functions.
git-svn-id: http://opkg.googlecode.com/svn/trunk@391 e8e0d7a0-c8d9-11dd-a880-a1081c7ac358
Diffstat (limited to 'libopkg/opkg_remove.c')
-rw-r--r--libopkg/opkg_remove.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/libopkg/opkg_remove.c b/libopkg/opkg_remove.c
index f744585..f53ef00 100644
--- a/libopkg/opkg_remove.c
+++ b/libopkg/opkg_remove.c
@@ -329,8 +329,14 @@ remove_data_files_and_list(opkg_conf_t *conf, pkg_t *pkg)
pkg_t *owner;
int rootdirlen = 0;
- str_list_init(&installed_dirs);
installed_files = pkg_get_installed_files(conf, pkg);
+ if (installed_files == NULL) {
+ opkg_message(conf, OPKG_ERROR, "Failed to determine installed "
+ "files for %s. None removed.\n", pkg->name);
+ return;
+ }
+
+ str_list_init(&installed_dirs);
/* don't include trailing slash */
if (conf->offline_root)