From: Adrian S. <a3s...@us...> - 2005-06-13 23:29:44
|
Update of /cvsroot/sblim/mofc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9791/mofc Modified Files: backend_sfcb.c Log Message: Fixed [ 1220035 ] Incorrect qualifier array handling in backend_sfcb.c Fixed line 114 Index: backend_sfcb.c =================================================================== RCS file: /cvsroot/sblim/mofc/backend_sfcb.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- backend_sfcb.c 7 Jun 2005 12:27:23 -0000 1.3 +++ backend_sfcb.c 13 Jun 2005 23:29:35 -0000 1.4 @@ -38,6 +38,7 @@ extern ClClass *ClClassRebuildClass(ClClass * cls, void *area); extern void ClClassFreeClass(ClClass * cls); extern char *ClClassToString(ClClass * cls); +extern CMPIStatus simpleArrayAdd(CMPIArray * array, CMPIValue * val, CMPIType type); extern CMPIBroker *Broker; @@ -89,6 +90,7 @@ CMPIData data; CMPIData arr_data; int i = 0; + CMPIStatus st; data.type = make_cmpi_type(lextype,arrayspec); data.value.uint64 = 0L; /* set to binary zeros */ @@ -106,10 +108,10 @@ if (data.type & CMPI_ARRAY) { /* process array entries */ data.value.array = - CMNewArray(Broker,arrayspec,data.type&~CMPI_ARRAY,NULL); + CMNewArray(Broker,0,data.type&~CMPI_ARRAY,NULL); while (vals && vals -> val_value) { arr_data = make_cmpi_data(lextype,-1,vals); - CMSetArrayElementAt(data.value.array, i, &arr_data.value, data.type); + st=simpleArrayAdd(data.value.array, &arr_data.value, data.type&~CMPI_ARRAY); i++; vals = vals -> val_next; } @@ -205,7 +207,7 @@ htinsert( he, upstrdup(ce -> class_id, strlen(ce -> class_id)), strlen(ce -> class_id), - (void *)1); + (void *)1); sfcbClass = ClClassNew( ce -> class_id, ce -> class_parent ? ce -> class_parent -> class_id : NULL ); |