瀏覽代碼

Clarify internerr() messages

Print the bogus value that triggered the internal error, or simply
reword unclear messages.
Guillem Jover 14 年之前
父節點
當前提交
10f28a9948
共有 12 個文件被更改,包括 39 次插入26 次删除
  1. 5 2
      dselect/main.cc
  2. 8 4
      dselect/pkgcmds.cc
  3. 1 1
      dselect/pkgdepcon.cc
  4. 8 5
      dselect/pkgdisplay.cc
  5. 8 6
      dselect/pkglist.cc
  6. 1 1
      dselect/pkgtop.cc
  7. 1 1
      lib/dpkg/compress.c
  8. 1 1
      lib/dpkg/parse.c
  9. 1 1
      lib/dpkg/pkg-db.c
  10. 2 2
      lib/dpkg/varbuf.c
  11. 2 1
      src/help.c
  12. 1 1
      src/main.c

+ 5 - 2
dselect/main.cc

@@ -463,7 +463,10 @@ urqresult urq_menu(void) {
       dme(cursor,0); cursor+= entries-1; cursor %= entries; dme(cursor,1);
     } else if (c=='\n' || c=='\r' || c==KEY_ENTER) {
       clear(); refresh();
-      switch (menuentries[cursor].fn()) { /* FIXME: trap errors in urq_... */
+
+      /* FIXME: trap errors in urq_... */
+      urqresult res = menuentries[cursor].fn();
+      switch (res) {
       case urqr_quitmenu:
         return urqr_quitmenu;
       case urqr_normal:
@@ -471,7 +474,7 @@ urqresult urq_menu(void) {
       case urqr_fail:
         break;
       default:
-        internerr("unknown menufn");
+        internerr("unknown menufn %d", res);
       }
       refreshmenu(); dme(cursor,1);
     } else if (c==C('l')) {

+ 8 - 4
dselect/pkgcmds.cc

@@ -44,7 +44,7 @@ packagelist::affectedmatches(struct pkginfo *pkg, struct pkginfo *comparewith) {
   case sso_unsorted:
     break;
   default:
-    internerr("unknown statsortorder in affectedmatches");
+    internerr("unknown statsortorder %d in affectedmatches", statsortorder);
   }
   if (comparewith->priority != pkginfo::pri_unset &&
       (comparewith->priority != pkg->priority ||
@@ -168,7 +168,8 @@ void packagelist::kd_swapstatorder() {
   case sso_avail:     statsortorder= sso_state;     break;
   case sso_state:     statsortorder= sso_unsorted;  break;
   case sso_unsorted:  statsortorder= sso_avail;     break;
-  default: internerr("unknown statsort in kd_swapstatorder");
+  default:
+    internerr("unknown statsort %d in kd_swapstatorder", statsortorder);
   }
   resortredisplay();
 }
@@ -179,7 +180,8 @@ void packagelist::kd_swaporder() {
   case so_section:   sortorder= so_alpha;     break;
   case so_alpha:     sortorder= so_priority;  break;
   case so_unsorted:                           return;
-  default: internerr("unknown sort in kd_swaporder");
+  default:
+    internerr("unknown sort %d in kd_swaporder", sortorder);
   }
   resortredisplay();
 }
@@ -216,7 +218,9 @@ void packagelist::kd_versiondisplay() {
   case vdo_both:       versiondisplayopt= vdo_none;       break;
   case vdo_none:       versiondisplayopt= vdo_available;  break;
   case vdo_available:  versiondisplayopt= vdo_both;       break;
-  default: internerr("unknown versiondisplayopt in kd_versiondisplay");
+  default:
+    internerr("unknown versiondisplayopt %d in kd_versiondisplay",
+              versiondisplayopt);
   }
   setwidths();
   leftofscreen= 0;

+ 1 - 1
dselect/pkgdepcon.cc

@@ -356,7 +356,7 @@ int packagelist::resolvedepcon(dependency *depends) {
     return 0;
 
   default:
-    internerr("unknown deptype");
+    internerr("unknown deptype %d", depends->type);
   }
   /* never reached, make gcc happy */
   return 1;

+ 8 - 5
dselect/pkgdisplay.cc

@@ -180,7 +180,7 @@ void packagelist::setwidths() {
     description_column= versionavailable_column + versionavailable_width + gap_width;
     break;
   default:
-    internerr("unknown versiondisplayopt in setwidths");
+    internerr("unknown versiondisplayopt %d in setwidths", versiondisplayopt);
   }
 
   total_width= TOTAL_LIST_WIDTH;
@@ -215,7 +215,8 @@ void packagelist::redrawtitle() {
           waddnstr(titlewin, _(" (status, section)"), xmax-x);
           break;
         default:
-          internerr("bad statsort in redrawtitle/so_section");
+          internerr("bad statsort %d in redrawtitle/so_section",
+                    statsortorder);
         }
         break;
       case so_priority:
@@ -230,7 +231,8 @@ void packagelist::redrawtitle() {
           waddnstr(titlewin, _(" (status, priority)"), xmax-x);
           break;
         default:
-          internerr("bad statsort in redrawtitle/so_priority");
+          internerr("bad statsort %d in redrawtitle/so_priority",
+                    statsortorder);
         }
         break;
       case so_alpha:
@@ -245,13 +247,14 @@ void packagelist::redrawtitle() {
           waddnstr(titlewin, _(" (by status)"), xmax-x);
           break;
         default:
-          internerr("bad statsort in redrawtitle/so_priority");
+          internerr("bad statsort %d in redrawtitle/so_priority",
+                    statsortorder);
         }
         break;
       case so_unsorted:
         break;
       default:
-        internerr("bad sort in redrawtitle");
+        internerr("bad sort %d in redrawtitle", sortorder);
       }
     }
     const char *helpstring;

+ 8 - 6
dselect/pkglist.cc

@@ -47,7 +47,7 @@ int packagelist::compareentries(const struct perpackagestate *a,
   case sso_unsorted:
     break;
   default:
-    internerr("unknown statsortorder in compareentries");
+    internerr("unknown statsortorder %d in compareentries", statsortorder);
   }
 
   const char *asection= a->pkg->section;
@@ -80,7 +80,7 @@ int packagelist::compareentries(const struct perpackagestate *a,
     return c_name;
   case so_unsorted:
   default:
-    internerr("unsorted or unknown in compareentries");
+    internerr("unsorted or unknown sort %d in compareentries", sortorder);
   }
   /* never reached, make gcc happy */
   return 1;
@@ -214,7 +214,8 @@ void packagelist::ensurestatsortinfo() {
         }
         break;
       default:
-        internerr("unknown stat in ensurestatsortinfo sso_avail");
+        internerr("unknown status %d in ensurestatsortinfo sso_avail",
+                  pkg->status);
       }
       debug(dbg_general,
             "packagelist[%p]::ensurestatsortinfos() i=%d ssavail=%d",
@@ -247,7 +248,8 @@ void packagelist::ensurestatsortinfo() {
         table[index]->ssstate= sss_installed;
         break;
       default:
-        internerr("unknown stat in ensurestatsortinfo sso_state");
+        internerr("unknown status %d in ensurestatsortinfo sso_state",
+                  table[index]->pkg->status);
       }
       debug(dbg_general,
             "packagelist[%p]::ensurestatsortinfos() i=%d ssstate=%d",
@@ -256,7 +258,7 @@ void packagelist::ensurestatsortinfo() {
     calcsssdone= 1;
     break;
   default:
-    internerr("unknown statsortorder in ensurestatsortinfo");
+    internerr("unknown statsortorder %d in ensurestatsortinfo", statsortorder);
   }
 }
 
@@ -301,7 +303,7 @@ void packagelist::sortmakeheads() {
     case sso_unsorted:
       break;
     default:
-      internerr("unknown statsortorder in sortmakeheads");
+      internerr("unknown statsortorder %d in sortmakeheads", statsortorder);
     }
 
     int prioritydiff= (!lastpkg ||

+ 1 - 1
dselect/pkgtop.cc

@@ -71,7 +71,7 @@ int packagelist::describemany(char buf[], const char *prioritystring,
   case sso_unsorted:
     break;
   default:
-    internerr("unknown statsortrder in describemany all");
+    internerr("unknown statsortrder %d in describemany all", statsortorder);
   }
 
   if (!prioritystring) {

+ 1 - 1
lib/dpkg/compress.c

@@ -462,7 +462,7 @@ compressor_get(enum compressor_type type)
 	const enum compressor_type max_type = array_count(compressor_array);
 
 	if (type < 0 || type >= max_type)
-		internerr("compressor_type is out of range");
+		internerr("compressor_type %d is out of range", type);
 
 	return compressor_array[type];
 }

+ 1 - 1
lib/dpkg/parse.c

@@ -348,7 +348,7 @@ parse_find_set_slot(struct parsedb_state *ps,
                       "instances present"));
 
   if (pkgset_installed_instances(set) != count.total)
-    internerr("in-core pkgset %s with inconsistent number of instances",
+    internerr("in-core pkgset '%s' with inconsistent number of instances",
               set->name);
 
   return set;

+ 1 - 1
lib/dpkg/pkg-db.c

@@ -138,7 +138,7 @@ pkg_db_get_singleton(struct pkgset *set)
       if (pkg->status > stat_notinstalled)
         return pkg;
     }
-    internerr("pkgset %s should have one installed instance", set->name);
+    internerr("pkgset '%s' should have one installed instance", set->name);
   default:
     return NULL;
   }

+ 2 - 2
lib/dpkg/varbuf.c

@@ -129,7 +129,7 @@ varbuf_grow(struct varbuf *v, size_t need_size)
 {
   /* Make sure the varbuf is in a sane state. */
   if (v->size < v->used)
-    internerr("inconsistent varbuf: size(%zu) < used(%zu)", v->size, v->used);
+    internerr("varbuf used(%zu) > size(%zu)", v->used, v->size);
 
   /* Check if we already have enough room. */
   if ((v->size - v->used) >= need_size)
@@ -144,7 +144,7 @@ varbuf_trunc(struct varbuf *v, size_t used_size)
 {
   /* Make sure the caller does not claim more than available. */
   if (v->size < used_size)
-    internerr("varbuf: claimed used(%zu) > size(%zu)", v->used, v->size);
+    internerr("varbuf new_used(%zu) > size(%zu)", used_size, v->size);
 
   v->used = used_size;
 }

+ 2 - 1
src/help.c

@@ -646,7 +646,8 @@ void ensure_pathname_nonexisting(const char *pathname) {
     execlp(RM, "rm", "-rf", "--", pathname, NULL);
     ohshite(_("unable to execute %s (%s)"), _("rm command for cleanup"), RM);
   }
-  debug(dbg_eachfile,"ensure_pathname_nonexisting running rm -rf");
+  debug(dbg_eachfile, "ensure_pathname_nonexisting running rm -rf '%s'",
+        pathname);
   subproc_wait_check(pid, "rm cleanup", 0);
 }
 

+ 1 - 1
src/main.c

@@ -211,7 +211,7 @@ forcetype_str(char type)
   case '!':
     return "[!]";
   default:
-    internerr("unknown force type %c", type);
+    internerr("unknown force type '%c'", type);
   }
 }