X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Fhelper%2Fjim.c;h=f0d17525ae2742e2ff98325bb5ee05f46df09f18;hp=28dc950db1999937e39a60a0eb2cf4cd2886fa76;hb=ca3d4db1e335af2adbc5424d28e7327dc174e404;hpb=9997362a2a526636f0f165109870e52b0e16a705 diff --git a/src/helper/jim.c b/src/helper/jim.c index 28dc950db1..f0d17525ae 100644 --- a/src/helper/jim.c +++ b/src/helper/jim.c @@ -49,7 +49,9 @@ #define JIM_DYNLIB /* Dynamic library support for UNIX and WIN32 */ #endif /* JIM_ANSIC */ +#ifndef _GNU_SOURCE #define _GNU_SOURCE /* for vasprintf() */ +#endif #include #include #include @@ -87,7 +89,7 @@ #endif /* WIN32 */ #endif /* JIM_DYNLIB */ -#ifndef WIN32 +#ifdef HAVE_UNISTD_H #include #endif @@ -116,7 +118,7 @@ static void JimChangeCallFrameId(Jim_Interp *interp, Jim_CallFrame *cf); static void JimFreeCallFrame(Jim_Interp *interp, Jim_CallFrame *cf, int flags); static void JimRegisterCoreApi(Jim_Interp *interp); -static Jim_HashTableType JimVariablesHashTableType; +static Jim_HashTableType *getJimVariablesHashTableType(void); /* ----------------------------------------------------------------------------- * Utility functions @@ -3235,7 +3237,7 @@ int Jim_CreateProcedure(Jim_Interp *interp, const char *cmdName, Jim_ListLength(interp, staticsListObjPtr, &len); if (len != 0) { cmdPtr->staticVars = Jim_Alloc(sizeof(Jim_HashTable)); - Jim_InitHashTable(cmdPtr->staticVars, &JimVariablesHashTableType, + Jim_InitHashTable(cmdPtr->staticVars, getJimVariablesHashTableType(), interp); for (i = 0; i < len; i++) { Jim_Obj *objPtr, *initObjPtr, *nameObjPtr; @@ -3438,6 +3440,11 @@ static Jim_HashTableType JimVariablesHashTableType = { JimVariablesHTValDestructor /* val destructor */ }; +static Jim_HashTableType *getJimVariablesHashTableType(void) +{ + return &JimVariablesHashTableType; +} + /* ----------------------------------------------------------------------------- * Variable object * ---------------------------------------------------------------------------*/ @@ -11977,7 +11984,7 @@ static int Jim_EnvCoreCommand(Jim_Interp *interp, int argc, if (argc == 1) { -#ifndef _WIN32 +#if ! HAVE_UNISTD_H || IS_DARWIN extern char **environ; #endif