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? -- https://gitlab.winehq.org/wine/wine/-/merge_requests/145#note_15569