|
54 | 54 |
|
55 | 55 | #define W_DEFAULT -1 |
56 | 56 | #define N_DEFAULT -1 |
57 | | -#define PARAM_TYPE_COUNT (sizeof(paramName) / sizeof(paramName[0])) /*CID: 280130, 280150 and 280152 fix for Resource leak*/ |
58 | 57 |
|
59 | 58 | typedef enum funcNameId { |
60 | 59 | func_GetEntryCount, |
@@ -218,24 +217,14 @@ PANSC_XML_DOM_NODE_OBJECT DMPackCreateObject(PANSC_XML_DOM_NODE_OBJECT P, int ty |
218 | 217 | { |
219 | 218 | PANSC_XML_DOM_NODE_OBJECT P1 = NULL; |
220 | 219 | /*CID: 280130 fix for Resource leak*/ |
221 | | - if (!P || !name || (unsigned int)type >= PARAM_TYPE_COUNT) |
222 | | - return NULL; |
223 | | - |
224 | 220 | P1 = DMPackCreateNode(P,"object",0,0); |
225 | 221 | if (!P1) |
226 | | - return NULL; |
227 | | - |
228 | | - if (DMPackCreateNode(P1, "name", name, 0) == NULL) { |
229 | | - return NULL; |
230 | | - } |
231 | | - |
232 | | - if (DMPackCreateNode(P1, "objectType", objectType[type], objectTypeLen[type]) == NULL) { |
233 | | - return NULL; |
234 | | - } |
| 222 | + return P1; |
235 | 223 |
|
236 | | - if (maxInstance && DMPackCreateNode(P1, "maxInstance", maxInstance, 0) == NULL) { |
237 | | - return NULL; |
238 | | - } |
| 224 | + DMPackCreateNode(P1, "name", name, 0); |
| 225 | + DMPackCreateNode(P1, "objectType", objectType[type], objectTypeLen[type]); |
| 226 | + if (maxInstance) |
| 227 | + DMPackCreateNode(P1, "maxInstance", maxInstance, 0); |
239 | 228 | pCurrentFunctionsNode=0; |
240 | 229 | return P1; |
241 | 230 | } |
@@ -285,82 +274,39 @@ void DMPackCreateParam(PANSC_XML_DOM_NODE_OBJECT P, char* name, int typeId) |
285 | 274 | { |
286 | 275 | PANSC_XML_DOM_NODE_OBJECT P1 = NULL; |
287 | 276 | /* CID:280150 fix for Resource leak */ |
288 | | - if (!P || !name || (unsigned int)typeId >= PARAM_TYPE_COUNT) |
289 | | - { |
290 | | - return; |
291 | | - } |
292 | | - |
293 | 277 | P1 = DMPackCreateNode(P, "parameter", 0, 0); |
294 | 278 | if (!P1) return; |
295 | 279 |
|
296 | | - if (DMPackCreateNode(P1, "name", name, 0) == NULL) { |
297 | | - return; |
298 | | - } |
299 | | - |
300 | | - if (DMPackCreateNode(P1, "type", paramName[typeId], paramNameLen[typeId]) == NULL) { |
301 | | - return; |
302 | | - } |
303 | | - |
304 | | - if (DMPackCreateNode(P1, "syntax", paramSyntax[typeId], paramSyntaxLen[typeId]) == NULL) { |
305 | | - return; |
306 | | - } |
| 280 | + DMPackCreateNode(P1, "name", name, 0); |
| 281 | + DMPackCreateNode(P1, "type", paramName[typeId], paramNameLen[typeId]); |
| 282 | + DMPackCreateNode(P1, "syntax", paramSyntax[typeId], paramSyntaxLen[typeId]); |
307 | 283 | } |
308 | 284 |
|
309 | 285 | void DMPackCreateParamEx(PANSC_XML_DOM_NODE_OBJECT P, char* name, int typeId, char* type, char* syntax, int writable, int notify) |
310 | 286 | { |
311 | 287 | PANSC_XML_DOM_NODE_OBJECT P1 = NULL; |
312 | 288 | /* CID:280152 fix for Resource leak */ |
313 | | - if (!P || !name) |
314 | | - { |
315 | | - return; |
316 | | - } |
317 | | - |
318 | 289 | P1 = DMPackCreateNode(P,"parameter",0,0); |
319 | 290 | if (!P1) return; |
320 | 291 |
|
321 | | - if (DMPackCreateNode(P1,"name",name,0) == NULL) { |
322 | | - return; |
323 | | - } |
324 | | - |
325 | | - if (type) { |
326 | | - if (DMPackCreateNode(P1,"type",type,0) == NULL) { |
327 | | - return; |
328 | | - } |
329 | | - } else if (typeId >= 0 && (unsigned int)typeId < PARAM_TYPE_COUNT) { |
330 | | - if (DMPackCreateNode(P1,"type",paramName[typeId],paramNameLen[typeId]) == NULL) { |
331 | | - return; |
332 | | - } |
333 | | - } |
334 | | - |
335 | | - if (syntax) { |
336 | | - if (DMPackCreateNode(P1,"syntax",syntax,0) == NULL) { |
337 | | - return; |
338 | | - } |
339 | | - } else if (typeId >= 0 && (unsigned int)typeId < PARAM_TYPE_COUNT) { |
340 | | - if (DMPackCreateNode(P1,"syntax",paramSyntax[typeId],paramSyntaxLen[typeId]) == NULL) { |
341 | | - return; |
342 | | - } |
343 | | - } |
344 | | - |
345 | | - if (writable == 0) { |
346 | | - if (DMPackCreateNode(P1,"writable","false",5) == NULL) { |
347 | | - return; |
348 | | - } |
349 | | - } else if (writable == 1) { |
350 | | - if (DMPackCreateNode(P1,"writable","true",4) == NULL) { |
351 | | - return; |
352 | | - } |
353 | | - } |
354 | | - |
355 | | - if (notify == 0) { |
356 | | - if (DMPackCreateNode(P1,"notify","off",3) == NULL) { |
357 | | - return; |
358 | | - } |
359 | | - } else if (notify == 1) { |
360 | | - if (DMPackCreateNode(P1,"notify","on",2) == NULL) { |
361 | | - return; /* CID 280129 fix */ |
362 | | - } |
363 | | - } |
| 292 | + DMPackCreateNode(P1,"name",name,0); |
| 293 | + |
| 294 | + if(type) |
| 295 | + DMPackCreateNode(P1,"type",type,0); |
| 296 | + else |
| 297 | + DMPackCreateNode(P1,"type",paramName[typeId],paramNameLen[typeId]); |
| 298 | + if(syntax) |
| 299 | + DMPackCreateNode(P1,"syntax",syntax,0); |
| 300 | + else |
| 301 | + DMPackCreateNode(P1,"syntax",paramSyntax[typeId],paramSyntaxLen[typeId]); |
| 302 | + if(writable == 0) |
| 303 | + DMPackCreateNode(P1,"writable","false",5); |
| 304 | + else if(writable == 1) |
| 305 | + DMPackCreateNode(P1,"writable","true",4); |
| 306 | + if(notify == 0) |
| 307 | + DMPackCreateNode(P1,"notify","off",3); |
| 308 | + else if(notify == 1) |
| 309 | + DMPackCreateNode(P1,"notify","on",2); /* CID 280129 fix */ |
364 | 310 | } |
365 | 311 | void DMPackCreateParamTSWN(PANSC_XML_DOM_NODE_OBJECT P,char* name,char* T,char* S,int W,int N) |
366 | 312 | { |
|
0 commit comments