Browse Source

libdpkg: Make run_error_handler cope with NULL econtext gracefully

This could happen if the context has not been initialized, or if it has
been unwinded more than necessary.
Guillem Jover 16 years ago
parent
commit
43789e59f0
1 changed files with 6 additions and 0 deletions
  1. 6 0
      lib/dpkg/ehandle.c

+ 6 - 0
lib/dpkg/ehandle.c

@@ -97,6 +97,12 @@ run_error_handler(void)
     fprintf(stderr, _("%s: unrecoverable fatal error, aborting:\n %s\n"),
             thisname, errmsg);
     exit(2);
+  }
+
+  if (econtext == NULL) {
+    fprintf(stderr, _("%s: outside error context, aborting:\n %s\n"),
+            thisname, errmsg);
+    exit(2);
   } else {
     longjmp(*econtext->jump, 1);
   }