[PATCH 3/7] server: Fail to set delete disposition on a non-empty directory.

Alexandre Julliard julliard at winehq.org
Fri Nov 9 02:16:52 CST 2018


Dmitry Timoshkov <dmitry at baikal.ru> writes:

> Alexandre Julliard <julliard at winehq.org> wrote:
>
>> >> >> > Setting a disposition is not supposed to remove a directory or a file, just
>> >> >> > mark it for the removal until the last handle to it gets closed, or do you
>> >> >> > mean something else?
>> >> >> 
>> >> >> I know it's not supposed to, but I'm not sure it's a good enough reason
>> >> >> to add this check and make RemoveDirectory less reliable. Do you have an
>> >> >> app that depends on the directory still existing?
>> >> >
>> >> > It's the task scheduler service that suffers from this.
>> >> 
>> >> Where does it depend on the directory still existing?
>> >
>> > The scheduler service opens a directory for monitoring, and if that
>> > dir gets removed the things go haywire. I have an installer that calls
>> > RemoveDirectory() for the Tasks and Fonts directories, probably that
>> > happens inadvertently but still.
>> 
>> It sounds like the scheduler service should be fixed. The directory
>> could also get removed from outside of Wine, it should be able to cope
>> with that.
>
> The scheduler service handles file related errors just fine, the source
> of the problem is that the directories shouldn't be removed in the first
> place at all. Of course I can resend the remaining patches without this
> one if it makes things easier for you, and there's no things you'd like
> to see changed in them.

Yes please, the other patches look good.

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list