Przeglądaj źródła

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 lat temu
rodzic
commit
43789e59f0
1 zmienionych plików z 6 dodań i 0 usunięć
  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);
   }