Home | Info | Community | Development | myReactOS | Contact Us
Definition at line 171 of file enum_files.c.
Referenced by BITS_IBackgroundCopyJob_EnumFiles().
{ EnumBackgroundCopyFilesImpl *This; BackgroundCopyFileImpl *file; BackgroundCopyJobImpl *job = (BackgroundCopyJobImpl *) iCopyJob; ULONG i; TRACE("%p, %p)\n", ppObj, job); This = HeapAlloc(GetProcessHeap(), 0, sizeof *This); if (!This) return E_OUTOFMEMORY; This->lpVtbl = &BITS_IEnumBackgroundCopyFiles_Vtbl; This->ref = 1; /* Create array of files */ This->indexFiles = 0; EnterCriticalSection(&job->cs); This->numFiles = list_count(&job->files); This->files = NULL; if (This->numFiles > 0) { This->files = HeapAlloc(GetProcessHeap(), 0, This->numFiles * sizeof This->files[0]); if (!This->files) { LeaveCriticalSection(&job->cs); HeapFree(GetProcessHeap(), 0, This); return E_OUTOFMEMORY; } } i = 0; LIST_FOR_EACH_ENTRY(file, &job->files, BackgroundCopyFileImpl, entryFromJob) { file->lpVtbl->AddRef((IBackgroundCopyFile *) file); This->files[i] = (IBackgroundCopyFile *) file; ++i; } LeaveCriticalSection(&job->cs); *ppObj = &This->lpVtbl; return S_OK; }