From: Adrian S. <a3s...@us...> - 2005-04-11 21:19:12
|
Update of /cvsroot/sblim/sfcb In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv484 Modified Files: internalProvider.c Log Message: Fixing 1180671. InternalProvider.c returning bad status when no instances found for enumerateInstance(Name)s Index: internalProvider.c =================================================================== RCS file: /cvsroot/sblim/sfcb/internalProvider.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- internalProvider.c 9 Mar 2005 12:25:12 -0000 1.1.1.1 +++ internalProvider.c 11 Apr 2005 21:19:00 -0000 1.2 @@ -235,6 +235,7 @@ CMPIObjectPath * ref) { CMPIStatus st = { CMPI_RC_OK, NULL }; + CMPIStatus sti = { CMPI_RC_OK, NULL }; BlobIndex *bi; CMPIString *cn = CMGetClassName(ref, NULL); CMPIString *ns = CMGetNameSpace(ref, NULL); @@ -256,8 +257,8 @@ in=CMNewArgs(Broker,NULL); out=CMNewArgs(Broker,NULL); CMAddArg(in,"class",cns,CMPI_chars); - op=CMNewObjectPath(Broker,nss,"$ClassProvider$",&st); - rv=CBInvokeMethod(Broker,ctx,op,"getallchildren",in,out,&st); + op=CMNewObjectPath(Broker,nss,"$ClassProvider$",&sti); + rv=CBInvokeMethod(Broker,ctx,op,"getallchildren",in,out,&sti); ar=CMGetArg(out,"children",NULL).value.array; if (ar) ac=CMGetArrayCount(ar,NULL); @@ -296,6 +297,7 @@ void(*retFnc)(void*,CMPIInstance*), int ignprov) { CMPIStatus st = { CMPI_RC_OK, NULL }; + CMPIStatus sti = { CMPI_RC_OK, NULL }; BlobIndex *bi; CMPIString *cn = CMGetClassName(ref, NULL); CMPIString *ns = CMGetNameSpace(ref, NULL); @@ -316,10 +318,12 @@ out=CMNewArgs(Broker,NULL); if (ignprov) CMAddArg(in,"classignoreprov",cns,CMPI_chars); else CMAddArg(in,"class",cns,CMPI_chars); - op=CMNewObjectPath(Broker,nss,"$ClassProvider$",&st); + + op=CMNewObjectPath(Broker,nss,"$ClassProvider$",&sti); _SFCB_TRACE(1,("--- getallchildren")); - rv=CBInvokeMethod(Broker,ctx,op,"getallchildren",in,out,&st); - _SFCB_TRACE(1,("--- getallchildren rc: %d",st.rc)); + rv=CBInvokeMethod(Broker,ctx,op,"getallchildren",in,out,&sti); + _SFCB_TRACE(1,("--- getallchildren rc: %d",sti.rc)); + ar=CMGetArg(out,"children",NULL).value.array; if (ar) ac=CMGetArrayCount(ar,NULL); _SFCB_TRACE(1,("--- getallchildren ar: %p count: %d",ar,ac)); @@ -337,6 +341,7 @@ if (i<ac) cns=(char*)CMGetArrayElementAt(ar,i,NULL).value.string->hdl; else cns=NULL; } + _SFCB_RETURN(st); } |