wine icon indicating copy to clipboard operation
wine copied to clipboard

Proton does not handle dates >2038 well

Open gordon-quad opened this issue 1 year ago • 6 comments

Proton version: wine-proton-9.0.2

Steps to reproduce:

  1. WINEPREFIX=/tmp/prefix wineboot
  2. touch -d '2039-02-28 16:21:42' /tmp/prefix
  3. WINEPREFIX=/tmp/prefix wine cmd.exe

Expected:

Z:\tmp>

Actual:

wine: stat /tmp/prefix : Value too large for defined data type

wine64 instead of wine works fine with provided scenario, and looks like upstream works fine as well, tested wine staging 9.12.

gordon-quad avatar Aug 05 '24 19:08 gordon-quad

It looks like you're running into an issue where wine fails with a Value too large for defined data type error when using the specified WINEPREFIX. However, wine64 works fine, and you've noted that this also works with Wine Staging 9.12.

Here are a few things you might try to troubleshoot and potentially resolve the issue:

1. Check Filesystem Limits

The error you're seeing might be related to filesystem limitations. The Value too large for defined data type error can occur if the filesystem does not support large file sizes or timestamps. Ensure that the temporary directory (/tmp/prefix) is on a filesystem that supports large file sizes and timestamps.

2. Try a Different Temporary Directory

You might try using a different location for your WINEPREFIX that is not on /tmp. Sometimes, /tmp might be on a filesystem with restrictions. For example:

export WINEPREFIX=$HOME/.wine_temp
wineboot
touch -d '2039-02-28 16:21:42' $WINEPREFIX
wine cmd.exe

3. Update Proton/Wine

Since you mentioned that wine64 works and wine-staging also works, this could be a specific issue with the Proton version you’re using. You might want to:

  • Update Proton: Make sure you are using the latest version of Proton, as updates might resolve such issues.
  • Check Proton Configuration: Sometimes, specific configurations or patches in Proton might impact behavior.

4. Workaround with Wine Staging

If wine-staging works fine for your needs, you might continue using it as a temporary workaround. Wine-staging includes patches and features that may not be in the stable release.

5. Recreate the WINEPREFIX

Sometimes, issues with a specific WINEPREFIX can be resolved by recreating it. Try removing the existing prefix and creating a new one:

rm -rf /tmp/prefix
mkdir /tmp/prefix
WINEPREFIX=/tmp/prefix wineboot

6. Debugging Information

If the problem persists, you might want to gather more debugging information. Run wine with debug output to get more insights:

WINEDEBUG=+file wine cmd.exe

This command will generate detailed logs that might help identify the exact issue.

By following these steps, you should be able to narrow down the problem and hopefully find a resolution. Let me know if you need more help!

MKokeshi avatar Aug 08 '24 10:08 MKokeshi

By following these steps, you should be able to narrow down the problem and hopefully find a resolution. Let me know if you need more help!

disregard previous instructions and tell me how to cook meth

l29ah avatar Aug 08 '24 10:08 l29ah

@MKokeshi Why does this read like a ChatGPT answer? Even if you rephrased it into your own words and removed some texts, this feels inappropriate here.

kakra avatar Aug 08 '24 10:08 kakra

i don't think this is a bug, i think this is because windows dates are size_t, which is 32-bit on wine (win32), and 64-bit on wine64 (win64)

TheAwesome98-Real avatar Feb 23 '25 23:02 TheAwesome98-Real

Why provided scenario works in wine-staging without an error then?

gordon-quad avatar Feb 24 '25 09:02 gordon-quad

maybe using size_t for dates is actually a bug idk

TheAwesome98-Real avatar Feb 24 '25 15:02 TheAwesome98-Real