On Tue, 12 Aug 2025 18:38:07 +0200 Julian Taylor 
<[email protected]> wrote:
Package: wine
Version: 10.0~repack-6
Severity: normal

When /run/user/$uid is not writeable and TMPDIR is set, e.g. in a container 
wine crashes
on startup. Setting XDG_RUNTIME_DIR to a writable folder does not help.

This is caused by the debian patch 
debian/patches/fixes/temporary-directory.patch:
https://salsa.debian.org/wine-team/wine/-/blob/debian13-wine10/debian/patches/fixes/temporary-directory.patch?ref_type=heads#L201

Hello,
I could reproduce it inside a temporary VM,
where I did hide /run/user by mounting an empty tmpfs over it.
And, as described, followed by setting the TMPDIR environment.

A closer look shows the pointer returned by secure_getenv in line 39
is then tried to be freed in line 139:

   include/wine/server_tmpdir.h
    39         root_dir = secure_getenv("TMPDIR");
   139         free( root_dir );

Would it be possible to always store a copied buffer in root_dir like this?

    39         root_dir = strdup(secure_getenv("TMPDIR"));

Kind regards,
Bernhard

Reply via email to