https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101510
Jonathan Wakely <redi at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |INVALID
Status|WAITING |RESOLVED
--- Comment #6 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Madhu from comment #5)
> It looks like I did indeed get the semantics wrong
OK, thanks for confirming.
> I was going by the usage from databasePath() in
> https://github.com/WebKit/WebKit/blob/main/Source/WebKit/NetworkProcess/
> WebStorage/LocalStorageDatabaseTracker.cpp#L142
> which calls ensureDatabaseDirectoryExists() in
> https://github.com/WebKit/WebKit/blob/main/Source/WebCore/platform/sql/
> SQLiteFileSystem.cpp#L59
> which calls makeAllDirectories()
> https://github.com/WebKit/WebKit/blob/main/Source/WTF/wtf/FileSystem.cpp#L733
>
> The check is for only on the boolean value of ec, which is wrong
> according to the spec, Thanks!
That looks correct to me. It's the same as the example as I showed above.
If ec does not have a value, it means no error occurred. That means either the
directory was created, or already exists.
> Instead of precipitately filing the bug here I should have filed it
> with WebKit.
Are you *actually* seeing incorrect behaviour, or just concluding there is a
bug by reading the code?