Indeed.  And because it's not recursive, you have to use inotify on each
directory in the tree you're watching.  Bleah.

One example use is wine, which did have to define its own data
structure, I think:
http://source.winehq.org/git/wine.git/?a=history;f=server/change.c

On Wed, Jun 3, 2009 at 10:16 AM, Stefan Nuxoll <[email protected]> wrote:
>
> inotify is a piece of crap, you can only monitor a directory, from
> that you have to reread the listing and see what's changed for
> yourself.
>
> 2009/6/3 Paweł Hajdan Jr. <[email protected]>:
>>
>> Looks like it's not that simple. Nobody responded. :-/
>>
>> I analyzed inotify-tools source and they do everything on paths. Of
>> course that means a lot of careful updating etc, but should work in
>> lack of more elegant solution.
>>
>> Paweł
>>
>> On Sun, May 24, 2009 at 20:47, [email protected] <[email protected]> wrote:
>>> I am trying to make a patch for recursive directory watcher on linux
>>> using inotify event.
>>>
>>> When a new directory under watched directory is created, inotify event
>>> only gives me event->name relative to the watched directory.
>>> This makes it difficult to get the inode number of new directory
>>> because I am keeping track of watched inode numbers so far.
>>>
>>> I need to get "/xxx/yyy/newDirectory" from bare "newDirectory" that
>>> inotify event gives me so that I can get the inode number for
>>> newDirectory and then in turn update my watched inode structure.
>>>
>>> What would be a good way to get the absolute path of a new event that
>>> inotify just reported without having to maintain my own data
>>> structure, i.e without having data structure that keeps watch
>>> descriptor and it's watched path?
>>
>> >
>>
>
>
>
> --
> Stefan Nuxoll <[email protected]>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
Chromium Developers mailing list: [email protected] 
View archives, change email options, or unsubscribe: 
    http://groups.google.com/group/chromium-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to