[Bug 47023] New: Warframe in-game screenshot fails if screenshot directory already exists

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

[Bug 47023] New: Warframe in-game screenshot fails if screenshot directory already exists

Wine - Bugs mailing list
https://bugs.winehq.org/show_bug.cgi?id=47023

            Bug ID: 47023
           Summary: Warframe in-game screenshot fails if screenshot
                    directory already exists
           Product: Wine
           Version: 4.6
          Hardware: x86-64
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: shell32
          Assignee: [hidden email]
          Reporter: [hidden email]
      Distribution: ---

Created attachment 64181
  --> https://bugs.winehq.org/attachment.cgi?id=64181
SHCreateDirectoryExW already exists demo application source

The Warframe in-game screenshot (F6) utility fails to save a screenshot if the
directory it tries to use already exists.

These are:
$user\My Pictures\\Warframe
$warframe_install_location\\Downloaded\\Public\\Captures
$warframe_install_location\\Downloaded\\Public
$user\\Local Settings\\Application Data\\Warframe\\Captures

If one of these folders does not exist, it is created, and one screenshot can
be saved.

I believe the issue stems from SHCreateDirectoryExW returning ERROR_CANCELLED,
but have not had time to compile Wine with a fix yet.

0037:Call shell32.SHCreateDirectoryExW(00020060,09df9270 L"C:\\users\\john\\My
Pictures\\Warframe",00000000) ret=1401353f4
...
0037:fixme:shell:SHCreateDirectoryExW Show system error message, creating path
L"C:\\users\\john\\My Pictures\\Warframe", failed with error 183
0037:Ret  shell32.SHCreateDirectoryExW() retval=000004c7 ret=1401353f4

When the folder exists, SHCreateDirectoryExW returns with ERROR_CANCELLED 1223
(0x4C7)

https://github.com/wine-mirror/wine/blob/fabde842ede40fc53cf6f5743d5b477841f7b11c/dlls/shell32/shlfileop.c#L766

My simple test program with a non-null Hwnd returned error ERROR_ALREADY_EXISTS
183 on Windows 7, and ERROR_CANCELLED 1223 in Wine, but I am not confident in
my quick testing.

The MSDN docs do not mention this
https://docs.microsoft.com/en-us/windows/desktop/api/shlobj_core/nf-shlobj_core-shcreatedirectoryexw#remarks

I would like for someone to test the return value of SHCreateDirectoryExW with
a Hwnd for an exiting directory on Windows.

--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


Reply | Threaded
Open this post in threaded view
|

[Bug 47023] Warframe in-game screenshot fails if screenshot directory already exists

Wine - Bugs mailing list
https://bugs.winehq.org/show_bug.cgi?id=47023

--- Comment #1 from [hidden email] ---
Created attachment 64182
  --> https://bugs.winehq.org/attachment.cgi?id=64182
Proposed patch

Untested patch for discussion

--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


Reply | Threaded
Open this post in threaded view
|

[Bug 47023] Warframe in-game screenshot fails if screenshot directory already exists

Wine - Bugs mailing list
In reply to this post by Wine - Bugs mailing list
https://bugs.winehq.org/show_bug.cgi?id=47023

[hidden email] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[hidden email]
                   |                            |astmail.com.au

--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


Reply | Threaded
Open this post in threaded view
|

[Bug 47023] Warframe in-game screenshot fails if screenshot directory already exists

Wine - Bugs mailing list
In reply to this post by Wine - Bugs mailing list
https://bugs.winehq.org/show_bug.cgi?id=47023

--- Comment #2 from [hidden email] ---
Proposed patch fixes issue for me.
https://bugs.winehq.org/attachment.cgi?id=64182

I have not seen ERROR_FILE_EXISTS and I not sure if it should be excluded from
returning ERROR_CANCELLED.

--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


Reply | Threaded
Open this post in threaded view
|

[Bug 47023] Warframe in-game screenshot fails if screenshot directory already exists

Wine - Bugs mailing list
In reply to this post by Wine - Bugs mailing list
https://bugs.winehq.org/show_bug.cgi?id=47023

[hidden email] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[hidden email]

--- Comment #3 from [hidden email] ---
*** Bug 47054 has been marked as a duplicate of this bug. ***

--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


Reply | Threaded
Open this post in threaded view
|

[Bug 47023] Warframe in-game screenshot fails if screenshot directory already exists

Wine - Bugs mailing list
In reply to this post by Wine - Bugs mailing list
https://bugs.winehq.org/show_bug.cgi?id=47023

--- Comment #4 from [hidden email] ---
This also affects Atelier Lydie and Suelle (and possibly more games from Koei
Tecmo): saving doesn't work when the SAVEDATA directory already exists.

--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


Reply | Threaded
Open this post in threaded view
|

[Bug 47023] Warframe in-game screenshot fails if screenshot directory already exists

Wine - Bugs mailing list
In reply to this post by Wine - Bugs mailing list
https://bugs.winehq.org/show_bug.cgi?id=47023

--- Comment #5 from [hidden email] ---
On Windows XP (VM):

SHCreateDirectory/SHCreateDirectoryExW with a directory that already exists
both return 183 with and without a non-NULL hwnd.

With a path that's too long, SHCreateDirectory/SHCreateDirectoryExW both return
206 (ERROR_FILENAME_EXCED_RANGE) with and without a non-NULL hwnd.

On Wine:

With a path that's too long, SHCreateDirectory/SHCreateDirectoryExW both return
183 with hwnd==NULL and 1223 with hwnd!=NULL.

--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


Reply | Threaded
Open this post in threaded view
|

[Bug 47023] Warframe in-game screenshot fails if screenshot directory already exists

Wine - Bugs mailing list
In reply to this post by Wine - Bugs mailing list
https://bugs.winehq.org/show_bug.cgi?id=47023

Anastasius Focht <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |download
                URL|                            |http://content.warframe.com
                   |                            |/dl/Warframe.msi
                 CC|                            |[hidden email]

--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


Reply | Threaded
Open this post in threaded view
|

[Bug 47023] Warframe in-game screenshot fails if screenshot directory already exists

Wine - Bugs mailing list
In reply to this post by Wine - Bugs mailing list
https://bugs.winehq.org/show_bug.cgi?id=47023

[hidden email] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Fixed by SHA1|                            |9b6d198a3c7c8a02aa69c0d3d11
                   |                            |829712e9778a6
         Resolution|---                         |FIXED
             Status|UNCONFIRMED                 |RESOLVED

--- Comment #6 from [hidden email] ---
Fixed in Wine 3.7

https://source.winehq.org/git/wine.git/commit/9b6d198a3c7c8a02aa69c0d3d11829712e9778a6

--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


Reply | Threaded
Open this post in threaded view
|

[Bug 47023] Warframe in-game screenshot fails if screenshot directory already exists

Wine - Bugs mailing list
In reply to this post by Wine - Bugs mailing list
https://bugs.winehq.org/show_bug.cgi?id=47023

Alexandre Julliard <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |CLOSED

--- Comment #7 from Alexandre Julliard <[hidden email]> ---
Closing bugs fixed in 4.8.

--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.