Implement directory object in wineserver.

Alexandre Julliard julliard at winehq.org
Wed Nov 23 10:14:28 CST 2005


Vitaliy Margolen <wine-devel at kievinfo.com> writes:

> void *create_named_object_dir( const struct object *rootdir,
>                                const struct unicode_str *name,
>                                unsigned int attr,
>                                const struct object_ops *ops );
>
> DECL_HANDLER([open/create]_directory)
> {
> ...
>     get_req_unicode_str( &name );
>     if (req->rootdir) root_obj = get_handle_obj( current->process, req->rootdir, 0, &directory_ops );
>     dir = create_directory( root_obj, &name, req->attributes );
>     if (root_obj) release_object( root_obj );
> ...
>
> For each named object?

Something like that yes (plus proper error handling of course). Also
the get_handle_obj needs to be encapsulated in a get_directory_obj so
that you don't export directory_ops, and create_named_object_dir
should take a struct directory, not a struct object.

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list