From 4998870e6829a2a3818ae87557f81f220442a6b0 Mon Sep 17 00:00:00 2001 From: Franz Zotter Date: Sun, 26 Mar 2006 12:47:03 +0000 Subject: added octave error handling 'try' and 'catch' to pdoctave_get. So unknown variables are returned now as empty svn path=/trunk/externals/iem/pdoctave/; revision=4770 --- pdoctave_get.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'pdoctave_get.c') diff --git a/pdoctave_get.c b/pdoctave_get.c index 8177c8c..614ec84 100644 --- a/pdoctave_get.c +++ b/pdoctave_get.c @@ -50,14 +50,21 @@ static void pDOctaveGetCommand (PDOctaveGet *pdoctget_obj) { char *cmd; cmd = pdoctget_obj->oct_command; - strcpy(cmd, "write_shared_mem("); - cmd += 17; + strcpy(cmd, "try\n write_shared_mem("); + cmd += strlen(cmd); strcpy(cmd, pdoctget_obj->oct_name); cmd += strlen (cmd); *cmd++ = ','; sprintf(cmd, "%d", getSharedDataFrameId(pdoctget_obj->sdf)); cmd += strlen(cmd); - strcpy (cmd, ")\n"); + strcpy (cmd, ");\n catch\n disp(\"undefined variable\"); write_shared_mem("); + cmd += strlen(cmd); + strcpy (cmd, "[],"); + cmd +=strlen(cmd); + sprintf(cmd, "%d", getSharedDataFrameId(pdoctget_obj->sdf)); + cmd +=strlen(cmd); + strcpy (cmd,");\n end\n\0"); + post("pdoctave_get: %s",pdoctget_obj->oct_command); writeToOctaveStdIN (pdoctget_obj->oct_command); } -- cgit v1.2.1