Changeset 12 for trunk/src/helpers/xprf2.c
- Timestamp:
- Nov 4, 2000, 8:55:45 PM (25 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/helpers/xprf2.c
r8 r12 220 220 if (!pszNew) 221 221 arc = ERROR_INVALID_PARAMETER; 222 223 if (arc == NO_ERROR) 224 { 225 222 else 223 { 226 224 DosDelete(pszNew); 227 225 228 226 // open new profile 229 230 227 arc = xprfOpenProfile(pszNew, 231 228 &pxiniNew); 232 } 233 234 // get size of applications list 235 if (arc == NO_ERROR) 236 { 237 if (!PrfQueryProfileSize(hOld, NULL, NULL, &ulSizeOfAppsList)) 238 arc = PRFERR_APPSLIST; 239 else 240 if (ulSizeOfAppsList == 0) 229 230 // get size of applications list 231 if (arc == NO_ERROR) 232 { 233 if (!PrfQueryProfileSize(hOld, NULL, NULL, &ulSizeOfAppsList)) 241 234 arc = PRFERR_APPSLIST; 242 } 243 244 if (arc == NO_ERROR) 245 { 246 // get applications list 247 PSZ pApps = (PSZ)malloc(ulSizeOfAppsList); 248 PSZ pApp2 = pApps; 249 if (!PrfQueryProfileData(hOld, 250 NULL, 251 NULL, 252 pApps, 253 &ulSizeOfAppsList)) 254 arc = PRFERR_APPSLIST; 255 256 // applications loop 257 258 while ( (*pApp2 != 0) 259 && (arc == NO_ERROR) 260 ) 261 { 262 CHAR szErrorKey[1000]; 263 // copy application (this will call prfhCopyKey in turn) 264 arc = xprfCopyApp(hOld, 265 pApp2, 266 pxiniNew, 267 pApp2, 268 szErrorKey); 269 235 else 236 if (ulSizeOfAppsList == 0) 237 arc = PRFERR_APPSLIST; 238 239 if (arc == NO_ERROR) 240 { 241 // get applications list 242 PSZ pApps = (PSZ)malloc(ulSizeOfAppsList); 243 PSZ pApp2 = pApps; 244 if (!PrfQueryProfileData(hOld, 245 NULL, 246 NULL, 247 pApps, 248 &ulSizeOfAppsList)) 249 arc = PRFERR_APPSLIST; 250 251 // applications loop 252 253 while ( (*pApp2 != 0) 254 && (arc == NO_ERROR) 255 ) 256 { 257 CHAR szErrorKey[1000]; 258 // copy application (this will call prfhCopyKey in turn) 259 arc = xprfCopyApp(hOld, 260 pApp2, 261 pxiniNew, 262 pApp2, 263 szErrorKey); 264 265 if (pfnProgressCallback) 266 { 267 ULONG ulNow2, ulMax2; 268 ulNow2 = ((1000*(pApp2-pApps)) / ulSizeOfAppsList) + (ulCount*1000); 269 ulMax2 = (ulMax+1)*1000; 270 if (!pfnProgressCallback(ulUser, ulNow2, ulMax2)) 271 // aborted: 272 arc = PRFERR_ABORTED; 273 } 274 275 // go for next app 276 pApp2 += strlen(pApp2)+1; 277 278 } // end while (*pApp2 != 0) && MBID_NOERROR 279 280 if (pApps) 281 free(pApps); 282 } 283 284 xprfCloseProfile(pxiniNew); 285 286 // progress 270 287 if (pfnProgressCallback) 271 { 272 ULONG ulNow2, ulMax2; 273 ulNow2 = ((1000*(pApp2-pApps)) / ulSizeOfAppsList) + (ulCount*1000); 274 ulMax2 = (ulMax+1)*1000; 275 if (!pfnProgressCallback(ulUser, ulNow2, ulMax2)) 276 // aborted: 277 arc = PRFERR_ABORTED; 278 } 279 280 // go for next app 281 pApp2 += strlen(pApp2)+1; 282 283 } // end while (*pApp2 != 0) && MBID_NOERROR 284 285 if (pApps) 286 free(pApps); 287 } 288 289 xprfCloseProfile(pxiniNew); 290 291 // progress 292 if (pfnProgressCallback) 293 pfnProgressCallback(ulUser, (ulCount+1) * 1000, (ulMax+1) * 1000); 288 pfnProgressCallback(ulUser, (ulCount+1) * 1000, (ulMax+1) * 1000); 289 } 290 } 294 291 295 292 return (arc); … … 461 458 } 462 459 463 if ( (Profiles.pszSysName) 464 && (Profiles.pszUserName) 465 ) 466 { 460 if (Profiles.pszSysName) 467 461 free(Profiles.pszSysName); 462 if (Profiles.pszUserName) 468 463 free(Profiles.pszUserName); 469 }470 464 471 465 return (arc);
Note:
See TracChangeset
for help on using the changeset viewer.