summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
beefa43)
enabled, so that all mallocs and reallocs are tagged with a file
name and line number, this information is now shown in the `Out of
memory!' panic box.
git-svn-id: svn://svn.tartarus.org/sgt/putty@1497
cda61777-01e9-0310-a592-
d414129be87e
#ifdef MALLOC_LOG
static FILE *fp = NULL;
#ifdef MALLOC_LOG
static FILE *fp = NULL;
+static char *mlog_file = NULL;
+static int mlog_line = 0;
+
void mlog(char *file, int line)
{
void mlog(char *file, int line)
{
+ mlog_file = file;
+ mlog_line = line;
if (!fp) {
fp = fopen("putty_mem.log", "w");
setvbuf(fp, NULL, _IONBF, BUFSIZ);
if (!fp) {
fp = fopen("putty_mem.log", "w");
setvbuf(fp, NULL, _IONBF, BUFSIZ);
p = malloc(size);
#endif
if (!p) {
p = malloc(size);
#endif
if (!p) {
- MessageBox(NULL, "Out of memory!", "PuTTY Fatal Error",
+ char str[200];
+#ifdef MALLOC_LOG
+ sprintf(str, "Out of memory! (%s:%d, size=%d)",
+ mlog_file, mlog_line, size);
+#else
+ strcpy(str, "Out of memory!");
+#endif
+ MessageBox(NULL, str, "PuTTY Fatal Error",
MB_SYSTEMMODAL | MB_ICONERROR | MB_OK);
exit(1);
}
MB_SYSTEMMODAL | MB_ICONERROR | MB_OK);
exit(1);
}
- MessageBox(NULL, "Out of memory!", "PuTTY Fatal Error",
+ char str[200];
+#ifdef MALLOC_LOG
+ sprintf(str, "Out of memory! (%s:%d, size=%d)",
+ mlog_file, mlog_line, size);
+#else
+ strcpy(str, "Out of memory!");
+#endif
+ MessageBox(NULL, str, "PuTTY Fatal Error",
MB_SYSTEMMODAL | MB_ICONERROR | MB_OK);
exit(1);
}
MB_SYSTEMMODAL | MB_ICONERROR | MB_OK);
exit(1);
}