Zebediah Figura (@zfigura) commented about dlls/kernelbase/file.c:
+/***********************************************************************
handle_progress_callback
- Wrapper for progress callback, if the return value is false, the copy or move operation should be cancelled
- */
+BOOL handle_progress_callback(LPPROGRESS_ROUTINE progress, unsigned stream_count, LARGE_INTEGER total, LARGE_INTEGER total_bytes_written, unsigned int buffer_size, LARGE_INTEGER stream_bytes_transferred, BOOL *invoke_progress,
- DWORD callback_reason, HANDLE hSourceFile, HANDLE hDestinationFile, LPVOID param)
+{
- DWORD ret_progress;
- LARGE_INTEGER stream_size;
- stream_size.QuadPart = buffer_size;
- if (!*invoke_progress || !progress)
- {
return TRUE;
- }
Could we simplify this by just setting the callback pointer to NULL instead?