Hello,

Donjuanplatinum, le mar. 01 sept. 2026 10:45:06 +0800, a ecrit:
> 
> In incubator libfuse/master branch ,src/netfs.c lines 1436-1452:
> 
> 
> /* using the inode based api */
>       if(! strcmp(name, "."))
>       inode = fuse_get_inode(handle->parent->path);
> 
>       else if(handle->parent->parent && ! strcmp(name, ".."))
>       inode = fuse_get_inode(handle->parent->parent->path);
> 
>       if(! stat)
>       {
>         DEBUG("critical", "use_ino flag set, but stat ptr not available.\n");
>         inode = 0;
>       }
> 
>       else
>       inode = stat->st_ino;
> 
> The "." and ".." cases might to be overridden by the handling of the
> stat argument.
> 
> In either cases, the `inode` will be overridden by 0 or stat->st_ino. 

It looks odd indeed, perhaps it just lacks an "else" before if (!stat)

Samuel

Reply via email to