Fossil SCM

Mention possible core dump from fossil_panic() exits.

larrybr 2021-03-26 16:13 panic-reduction
Commit 466311686466f517b1b617fa7991b828eadaf7cbdee3f498a9ac27756b0b802f
1 file changed +4 -3
+4 -3
--- src/printf.c
+++ src/printf.c
@@ -1136,24 +1136,25 @@
11361136
** Print an error message, rollback all databases, and quit. These
11371137
** routines never return and produce a non-zero process exit status.
11381138
**
11391139
** The main difference between fossil_fatal() and fossil_panic() is that
11401140
** fossil_panic() makes an entry in the error log whereas fossil_fatal()
1141
-** does not. On POSIX platforms, if there is not error log, then both
1141
+** does not. On POSIX platforms, if there is not an error log, then both
11421142
** routines work similarly with respect to user-visible effects. Hence,
11431143
** the routines are interchangable for commands and only act differently
11441144
** when processing web pages. On the Windows platform, fossil_panic()
11451145
** also displays a pop-up stating that an error has occured and allowing
11461146
** just-in-time debugging to commence. On all platforms, fossil_panic()
11471147
** ends execution with a SIGABRT signal, bypassing atexit processing.
1148
+** This signal can also produce a core dump on POSIX platforms.
11481149
**
11491150
** Use fossil_fatal() for malformed inputs that should be reported back
11501151
** to the user, but which do not represent a configuration problem or bug.
11511152
**
11521153
** Use fossil_panic() for any kind of error that should be brought to the
1153
-** attention of the system administrator or Fossil developers. It is to
1154
-** be avoided for ordinary errors of usage, data entry, or I/O errors.
1154
+** attention of the system administrator or Fossil developers. It should
1155
+** be avoided for ordinary usage, parameter, OOM and I/O errors.
11551156
*/
11561157
NORETURN void fossil_panic(const char *zFormat, ...){
11571158
va_list ap;
11581159
int rc = 1;
11591160
char z[1000];
11601161
--- src/printf.c
+++ src/printf.c
@@ -1136,24 +1136,25 @@
1136 ** Print an error message, rollback all databases, and quit. These
1137 ** routines never return and produce a non-zero process exit status.
1138 **
1139 ** The main difference between fossil_fatal() and fossil_panic() is that
1140 ** fossil_panic() makes an entry in the error log whereas fossil_fatal()
1141 ** does not. On POSIX platforms, if there is not error log, then both
1142 ** routines work similarly with respect to user-visible effects. Hence,
1143 ** the routines are interchangable for commands and only act differently
1144 ** when processing web pages. On the Windows platform, fossil_panic()
1145 ** also displays a pop-up stating that an error has occured and allowing
1146 ** just-in-time debugging to commence. On all platforms, fossil_panic()
1147 ** ends execution with a SIGABRT signal, bypassing atexit processing.
 
1148 **
1149 ** Use fossil_fatal() for malformed inputs that should be reported back
1150 ** to the user, but which do not represent a configuration problem or bug.
1151 **
1152 ** Use fossil_panic() for any kind of error that should be brought to the
1153 ** attention of the system administrator or Fossil developers. It is to
1154 ** be avoided for ordinary errors of usage, data entry, or I/O errors.
1155 */
1156 NORETURN void fossil_panic(const char *zFormat, ...){
1157 va_list ap;
1158 int rc = 1;
1159 char z[1000];
1160
--- src/printf.c
+++ src/printf.c
@@ -1136,24 +1136,25 @@
1136 ** Print an error message, rollback all databases, and quit. These
1137 ** routines never return and produce a non-zero process exit status.
1138 **
1139 ** The main difference between fossil_fatal() and fossil_panic() is that
1140 ** fossil_panic() makes an entry in the error log whereas fossil_fatal()
1141 ** does not. On POSIX platforms, if there is not an error log, then both
1142 ** routines work similarly with respect to user-visible effects. Hence,
1143 ** the routines are interchangable for commands and only act differently
1144 ** when processing web pages. On the Windows platform, fossil_panic()
1145 ** also displays a pop-up stating that an error has occured and allowing
1146 ** just-in-time debugging to commence. On all platforms, fossil_panic()
1147 ** ends execution with a SIGABRT signal, bypassing atexit processing.
1148 ** This signal can also produce a core dump on POSIX platforms.
1149 **
1150 ** Use fossil_fatal() for malformed inputs that should be reported back
1151 ** to the user, but which do not represent a configuration problem or bug.
1152 **
1153 ** Use fossil_panic() for any kind of error that should be brought to the
1154 ** attention of the system administrator or Fossil developers. It should
1155 ** be avoided for ordinary usage, parameter, OOM and I/O errors.
1156 */
1157 NORETURN void fossil_panic(const char *zFormat, ...){
1158 va_list ap;
1159 int rc = 1;
1160 char z[1000];
1161

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button