Update of /cvsroot/q-lang/q/src
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv4351
Modified Files:
qmparse.y
Log Message:
fix unhandled 'External object' exceptions
Index: qmparse.y
===================================================================
RCS file: /cvsroot/q-lang/q/src/qmparse.y,v
retrieving revision 1.74
retrieving revision 1.75
diff -C2 -d -r1.74 -r1.75
*** qmparse.y 3 Oct 2007 02:59:36 -0000 1.74
--- qmparse.y 7 Dec 2007 22:06:09 -0000 1.75
***************
*** 3152,3155 ****
--- 3152,3156 ----
int sparsex(char *s)
{
+ THREAD *thr = get_thr();
int ret;
#ifdef USE_THREADS
***************
*** 3157,3160 ****
--- 3158,3162 ----
#endif
ret = parse(s, NULL, STRING);
+ if (!ret && thr->qmstat == BAD_OBJ) thr->qmstat = SYNTAX_ERR;
#ifdef USE_THREADS
pthread_mutex_unlock(&parse_mutex);
***************
*** 3179,3182 ****
--- 3181,3185 ----
ret = parse(fp, NULL, LINE);
#endif
+ if (!ret && thr->qmstat == BAD_OBJ) thr->qmstat = SYNTAX_ERR;
#ifdef USE_THREADS
pthread_mutex_unlock(&parse_mutex);
***************
*** 3233,3236 ****
--- 3236,3240 ----
int parsex(char *s)
{
+ THREAD *thr = get_thr();
int ret;
#ifdef USE_THREADS
***************
*** 3238,3241 ****
--- 3242,3246 ----
#endif
ret = parse(s, NULL, INTERACT);
+ if (!ret && thr->qmstat == BAD_OBJ) thr->qmstat = SYNTAX_ERR;
#ifdef USE_THREADS
pthread_mutex_unlock(&parse_mutex);
|