Fossil

Check-in [81632289]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Invoke abort() after a call to fossil_panic(), not exit(1). This will leave a core file if the system is correctly configured. Also show the panic on debugging logs.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | forum-v2
Files: files | file ages | folders
SHA3-256:8163228997755fcb67d5f0842bf9160f2f9383197fd5e28a3452f931f502389a
User & Date: drh 2018-07-30 16:44:11
Context
2018-07-30
19:14
Break out the processing of capability strings into a separate source file. Add new SQL functions: capunion() and fullcap(). Only send email notifications to users who have appropriate capabilities. check-in: 8a28a37c user: drh tags: forum-v2
16:44
Invoke abort() after a call to fossil_panic(), not exit(1). This will leave a core file if the system is correctly configured. Also show the panic on debugging logs. check-in: 81632289 user: drh tags: forum-v2
16:01
Add new security-audit checks for forum and "Announce" privileges. check-in: 5d6fc967 user: drh tags: forum-v2
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/printf.c.

1083
1084
1085
1086
1087
1088
1089



1090
1091

1092
1093
1094
1095
1096
1097
1098
  if( once ) exit(1);
  once = 1;
  mainInFatalError = 1;
  db_force_rollback();
  va_start(ap, zFormat);
  sqlite3_vsnprintf(sizeof(z),z,zFormat, ap);
  va_end(ap);



  fossil_errorlog("panic: %s", z);
  rc = fossil_print_error(rc, z);

  exit(rc);
}
NORETURN void fossil_fatal(const char *zFormat, ...){
  char *z;
  int rc = 1;
  va_list ap;
  mainInFatalError = 1;







>
>
>


>







1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
  if( once ) exit(1);
  once = 1;
  mainInFatalError = 1;
  db_force_rollback();
  va_start(ap, zFormat);
  sqlite3_vsnprintf(sizeof(z),z,zFormat, ap);
  va_end(ap);
  if( g.fAnyTrace ){
    fprintf(stderr, "/***** panic on %d *****/\n", getpid());
  }
  fossil_errorlog("panic: %s", z);
  rc = fossil_print_error(rc, z);
  abort();
  exit(rc);
}
NORETURN void fossil_fatal(const char *zFormat, ...){
  char *z;
  int rc = 1;
  va_list ap;
  mainInFatalError = 1;