[PATCH v4 2/2] server: Add USD support with timestamp updates.

Alexandre Julliard julliard at winehq.org
Mon May 4 10:49:48 CDT 2020


Rémi Bernon <rbernon at codeweavers.com> writes:

> @@ -1533,6 +1541,7 @@ void server_init_process_done(void)
>      signal_init_process();
>  
>      /* Signal the parent process to continue */
> +    pthread_sigmask( SIG_BLOCK, &server_block_set, &old_set );
>      SERVER_START_REQ( init_process_done )
>      {
>          req->module   = wine_server_client_ptr( peb->ImageBaseAddress );
> @@ -1541,10 +1550,22 @@ void server_init_process_done(void)
>  #endif
>          req->entry    = wine_server_client_ptr( entry );
>          req->gui      = (nt->OptionalHeader.Subsystem != IMAGE_SUBSYSTEM_WINDOWS_CUI);
> -        status = wine_server_call( req );
> +        wine_server_add_data( req, user_shared_data, sizeof(*user_shared_data) );
> +        status = server_call_unlocked( req );
>          suspend = reply->suspend;
>      }
>      SERVER_END_REQ;
> +    if (!status) usd_fd = receive_fd( &usd_handle );
> +    pthread_sigmask( SIG_SETMASK, &old_set, NULL );

It should be possible to use standard file mapping functions
(NtOpenSection, NtMapViewOfSection etc.) instead of adding custom
handling to the init_process_done request.

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list