Author: julianalbo
Date: Tue Aug 19 10:05:48 2008
New Revision: 30347
Modified:
trunk/src/debug.c
Log:
quick fix for 'script' debugger command
Modified: trunk/src/debug.c
==============================================================================
--- trunk/src/debug.c (original)
+++ trunk/src/debug.c Tue Aug 19 10:05:48 2008
@@ -406,6 +406,7 @@
PDB_run_command(interp, command);
}
+ TRACEDEB_MSG("debugger_cmdline finished");
}
static void
@@ -415,6 +416,9 @@
if (interp->pdb->script_file) {
fclose(interp->pdb->script_file);
interp->pdb->script_file = NULL;
+ interp->pdb->state|= PDB_STOPPED;
+ interp->pdb->last_command[0] = '\0';
+ interp->pdb->cur_command[0] = '\0';
}
}
@@ -640,14 +644,12 @@
FILE *fd = interp->pdb->script_file;
char buf[DEBUG_CMD_BUFFER_LENGTH+1];
char *ptr = buf;
- buf[0]='\0';
- if (feof(fd)) {
- close_script_file(interp);
- return;
- }
do {
- fgets(buf, DEBUG_CMD_BUFFER_LENGTH, fd);
+ if (fgets(buf, DEBUG_CMD_BUFFER_LENGTH, fd) == NULL) {
+ close_script_file(interp);
+ return;
+ }
/* skip spaces */
for (ptr = (char *)&buf; *ptr && isspace((unsigned char)*ptr);
ptr++);
@@ -657,7 +659,6 @@
continue;
} while (0);
- buf[strlen(buf)-1]='\0';
/* RT #46117: handle command error and print out script line
* PDB_run_command should return non-void value?
* stop execution of script if fails
@@ -669,7 +670,6 @@
close_script_file(interp);
return;
}
- strcpy(pdb->cur_command, buf);
}
else {
@@ -717,6 +717,8 @@
{
FILE *fd;
+ TRACEDEB_MSG("PDB_script_file");
+
/* If already executing a script, close it */
close_script_file(interp);
@@ -730,6 +732,7 @@
return;
}
interp->pdb->script_file = fd;
+ TRACEDEB_MSG("PDB_script_file finished");
}
/*
@@ -2078,7 +2081,7 @@
" :unused004",
" :unused008",
" :const",
- " :flat", /* should be :slurpy for args */
+ " :flat", /* should be :slurpy for args */
" :unused040",
" :optional",
" :opt_flag",