sync with Jim Tcl repository.
authoroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Mon, 25 Aug 2008 06:50:30 +0000 (06:50 +0000)
committeroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Mon, 25 Aug 2008 06:50:30 +0000 (06:50 +0000)
git-svn-id: svn://svn.berlios.de/openocd/trunk@964 b42882b7-edfa-0310-969c-e2dbd0fdcd60

src/helper/jim.c
src/helper/jim.h

index ce7b8f62b98af80f798af3b37de9c8194df5e3fb..a9838ab0d50b30ccb724976fa0f885791b9280d7 100644 (file)
@@ -2173,8 +2173,9 @@ static Jim_Obj *JimStringToUpper(Jim_Interp *interp, Jim_Obj *strObjPtr)
  * TODO: Lots of things work - via a hack
  *       However, no format item can be >= JIM_MAX_FMT 
  */
-Jim_Obj *Jim_FormatString(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
-        int objc, Jim_Obj *const *objv)
+#define JIM_MAX_FMT 2048
+static Jim_Obj *Jim_FormatString_Inner(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
+        int objc, Jim_Obj *const *objv, char *sprintf_buf)
 {
     const char *fmt, *_fmt;
     int fmtLen;
@@ -2190,8 +2191,6 @@ Jim_Obj *Jim_FormatString(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
         jim_wide wideValue;
                double doubleValue;
                /* we cheat and use Sprintf()! */
-#define JIM_MAX_FMT 2048
-               char sprintf_buf[JIM_MAX_FMT];
                char fmt_str[100];
                char *cp;
                int width;
@@ -2456,6 +2455,15 @@ Jim_Obj *Jim_FormatString(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
     return resObjPtr;
 }
 
+Jim_Obj *Jim_FormatString(Jim_Interp *interp, Jim_Obj *fmtObjPtr,
+        int objc, Jim_Obj *const *objv)
+{
+       char *sprintf_buf=malloc(JIM_MAX_FMT);
+       Jim_Obj *t=Jim_FormatString_Inner(interp, fmtObjPtr, objc, objv, sprintf_buf);
+       free(sprintf_buf);
+       return t; 
+}
+
 /* -----------------------------------------------------------------------------
  * Compared String Object
  * ---------------------------------------------------------------------------*/
@@ -8777,15 +8785,17 @@ int Jim_EvalFile(Jim_Interp *interp, const char *filename)
     int nread, totread, maxlen, buflen;
     int retval;
     Jim_Obj *scriptObjPtr;
-    char cwd[ 2048 ];
     
     if ((fp = fopen(filename, "r")) == NULL) {
+       const int cwd_len=2048;
+               char *cwd=malloc(cwd_len);
         Jim_SetResult(interp, Jim_NewEmptyStringObj(interp));
-       getcwd( cwd, sizeof(cwd) );
+       getcwd( cwd, cwd_len );
         Jim_AppendStrings(interp, Jim_GetResult(interp),
        "Error loading script \"", filename, "\"",
            " cwd: ", cwd,
            " err: ", strerror(errno), NULL);
+           free(cwd);
         return JIM_ERR;
     }
     buflen = 1024;
index 342c19e3d631f76a4dcb85621a017379c4ee0d47..a89500fb15af35a7326bdc3315efad4776b72e16 100644 (file)
@@ -3,7 +3,7 @@
  * Copyright 2005 Salvatore Sanfilippo <antirez@invece.org>
  * Copyright 2005 Clemens Hintze <c.hintze@gmx.net>
  * Copyright 2005 patthoyts - Pat Thoyts <patthoyts@users.sf.net> 
- * Copyright 2008 oharboe - Øyvind Harboe - soyvind.harboe@zylin.com
+ * Copyright 2008 oharboe - Øyvind Harboe - oyvind.harboe@zylin.com
  * Copyright 2008 Andrew Lunn <andrew@lunn.ch>
  * Copyright 2008 Duane Ellis <openocd@duaneellis.com>
  * Copyright 2008 Uwe Klein <uklein@klein-messgeraete.de>

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)