#28 nsd/tcljob.c:1163: error: Null Dereference pointer `queue` last assigned on line 1133 could be null and is dereferenced at line 1163, column 26. nsd/tcljob.c:1130:1: start of procedure JobJobListObjCmd() 1128. *---------------------------------------------------------------------- 1129. */ 1130. static int ^ 1131. JobJobListObjCmd(ClientData UNUSED(clientData), Tcl_Interp *interp, int objc, Tcl_Obj *const* objv) 1132. { nsd/tcljob.c:1133:5: 1131. JobJobListObjCmd(ClientData UNUSED(clientData), Tcl_Interp *interp, int objc, Tcl_Obj *const* objv) 1132. { 1133. Queue *queue = NULL; ^ 1134. int result = TCL_OK; 1135. Ns_ObjvSpec args[] = { nsd/tcljob.c:1134:5: 1132. { 1133. Queue *queue = NULL; 1134. int result = TCL_OK; ^ 1135. Ns_ObjvSpec args[] = { 1136. {"queueId", ObjvQueue, &queue, NULL}, nsd/tcljob.c:1135:5: 1133. Queue *queue = NULL; 1134. int result = TCL_OK; 1135. Ns_ObjvSpec args[] = { ^ 1136. {"queueId", ObjvQueue, &queue, NULL}, 1137. {NULL, NULL, NULL, NULL} nsd/tcljob.c:1140:9: Taking false branch 1138. }; 1139. 1140. if (Ns_ParseObjv(NULL, args, interp, 2, objc, objv) != NS_OK) { ^ 1141. result = TCL_ERROR; 1142. nsd/tcljob.c:1148:9: 1146. Tcl_HashSearch search; 1147. 1148. assert(queue != NULL); ^ 1149. /* 1150. * Create a Tcl List to hold the list of jobs. nsd/tcljob.c:1152:9: Skipping Tcl_NewListObj(): method has no implementation 1150. * Create a Tcl List to hold the list of jobs. 1151. */ 1152. jobList = Tcl_NewListObj(0, NULL); ^ 1153. for (hPtr = Tcl_FirstHashEntry(&queue->jobs, &search); 1154. hPtr != NULL; nsd/tcljob.c:1153:14: Skipping Tcl_FirstHashEntry(): method has no implementation 1151. */ 1152. jobList = Tcl_NewListObj(0, NULL); 1153. for (hPtr = Tcl_FirstHashEntry(&queue->jobs, &search); ^ 1154. hPtr != NULL; 1155. hPtr = Tcl_NextHashEntry(&search) nsd/tcljob.c:1154:14: Loop condition is true. Entering loop body 1152. jobList = Tcl_NewListObj(0, NULL); 1153. for (hPtr = Tcl_FirstHashEntry(&queue->jobs, &search); 1154. hPtr != NULL; ^ 1155. hPtr = Tcl_NextHashEntry(&search) 1156. ) { nsd/tcljob.c:1161:13: 1159. Ns_Time diff; 1160. char threadId[32]; 1161. Job *jobPtr = (Job *)Tcl_GetHashValue(hPtr); ^ 1162. 1163. jobId1 = Tcl_GetHashKey(&queue->jobs, hPtr); nsd/tcljob.c:1163:26: 1161. Job *jobPtr = (Job *)Tcl_GetHashValue(hPtr); 1162. 1163. jobId1 = Tcl_GetHashKey(&queue->jobs, hPtr); ^ 1164. jobCode = GetJobCodeStr( jobPtr->code); 1165. jobState = GetJobStateStr(jobPtr->state);