https://bugs.winehq.org/show_bug.cgi?id=45437
Bug ID: 45437
Summary: Readme's installation instructions link leads to
winehq page with no installation instructions
Product: Wine-staging
Version: unspecified
Hardware: x86
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: root(a)swooshalicio.us
CC: leslie_alistair(a)hotmail.com, z.figura12(a)gmail.com
Distribution: ---
The readme in the wine-staging repository links to
https://wine-staging.com/installation.html which redirects to
https://wiki.winehq.org/Wine-Staging which contains no information for
installing wine-staging.
--
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.
https://bugs.winehq.org/show_bug.cgi?id=46047
Bug ID: 46047
Summary: Multiple applications want Windows 8+ futex-like
operations kernel32.dll.WaitOnAddress,
kernel32.dll.WakeByAddress{All,Single} (VLC)
Product: Wine
Version: 3.18
Hardware: x86-64
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: kernel32
Assignee: wine-bugs(a)winehq.org
Reporter: focht(a)gmx.net
Distribution: ---
Hello folks,
to track:
* https://www.winehq.org/pipermail/wine-devel/2018-October/134085.html
* https://www.winehq.org/pipermail/wine-devel/2018-October/134086.html
There is a series of articles on the background/inner workings of this Windows
8+ futex-like operations by Raymond Chen on Microsoft developer blog "The Old
New Thing":
(1) https://blogs.msdn.microsoft.com/oldnewthing/20160823-00/?p=94145
("WaitOnAddress lets you create a synchronization object out of any data
variable, even a byte")
(2) https://blogs.msdn.microsoft.com/oldnewthing/20160824-00/?p=94155
("Implementing a synchronization barrier in terms of WaitOnAddress")
(3) https://blogs.msdn.microsoft.com/oldnewthing/20160825-00/?p=94165
("Implementing a critical section in terms of WaitOnAddress")
(4) https://blogs.msdn.microsoft.com/oldnewthing/20160826-00/?p=94185
("Spurious wakes, race conditions, and bogus FIFO claims: A peek behind the
curtain of WaitOnAddress")
Alternative overview to the blog using Github-based WIKI:
https://github.com/mity/mctrl/wiki/Old-New-Win32API (click the sections to get
to blog entries)
WaitOnAddress()
* WaitOnAddress lets you create a synchronization object out of any data
variable, even a byte
* Implementing a synchronization barrier in terms of WaitOnAddress
* Implementing a critical section in terms of WaitOnAddress
* Extending our critical section based on WaitOnAddress to support timeouts
* Comparing WaitOnAddress with futexes (futexi? futexen?)
* Creating a semaphore from WaitOnAddress
* Creating a semaphore with a maximum count from WaitOnAddress
* Creating a manual-reset event from WaitOnAddress
* Creating an automatic-reset event from WaitOnAddress
Related: bug 45524 ("Add a futex-based implementation of condition variables")
I found multiple applications which make use of this Windows 8+ API.
Example: VLC
https://github.com/videolan/vlc/blob/master/src/win32/thread.c
Most of them have fallback implementations if the API is not available so it's
not critical to the functionality. But it's still good to have real world tests
:-)
Regards
--
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.
https://bugs.winehq.org/show_bug.cgi?id=48798
Bug ID: 48798
Summary: RegCloseKey: Uninitialized read from get_language_sort
Product: Wine
Version: 5.3
Hardware: x86
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: kernelbase
Assignee: wine-bugs(a)winehq.org
Reporter: jeffersoncarpenter2(a)gmail.com
Distribution: ---
Created attachment 66710
--> https://bugs.winehq.org/attachment.cgi?id=66710
Configure output.
Steps to reproduce:
* Build wine 5.3 (or commit 00e55c8fc0). Configure output attached.
* Disable wine preloader to make valgrind a little quieter.
* Compile a test program (I used 'int main() { return 0; }') using
i686-w64-mingw32-gcc
* Run this under valgrind. Valgrind output attached.
The first error raised by valgrind is:
==9987== Conditional jump or move depends on uninitialised value(s)
==9987== at 0x7B062414: RegCloseKey (registry.c:965)
==9987== by 0x7B040070: get_language_sort (locale.c:693)
==9987== by 0x7B040243: init_locale (locale.c:737)
==9987== by 0x7B04BE43: DllMain (main.c:48)
==9987== ...
The uninitialized value is the HKEY key defined in get_language_sort.
--
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.
https://bugs.winehq.org/show_bug.cgi?id=47766
Bug ID: 47766
Summary: PathAllocCanonicalize treats path segments start with
dots wrong.
Product: Wine
Version: 4.16
Hardware: x86
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: kernelbase
Assignee: wine-bugs(a)winehq.org
Reporter: zzhang(a)codeweavers.com
Distribution: ---
This bug was reported on wine-devel mail list by Sebastian M. Ernst
<ernst(a)pleiszenburg.de>
user@comp:/path/other> WINEDEBUG=-all PYTHONHOME="z:\\path\\.to\\target"
wine /path/.to/target/python.exe -c "import sys; print(sys.executable)"
Z:\pathto\target\python.exe
PYTHONHOME="z:\\path\\..to\\target" wine /path/..to/target/python.exe -c
"import sys; print(sys.executable)"
Z:\to\target\python.exe
--
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.
https://bugs.winehq.org/show_bug.cgi?id=48542
Bug ID: 48542
Summary: Mono (and probably .NET) needs CreateThreadpoolIo
Product: Wine
Version: 5.0
Hardware: x86
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: kernelbase
Assignee: wine-bugs(a)winehq.org
Reporter: madewokherd(a)gmail.com
Distribution: ---
Found testing LiveSplit 1.7.7 on Wine Mono from the master branch.
Mono's implementation of System.Threading.ThreadPoolBoundHandle depends on
CreateThreadpoolIo. Wine's stub of this function returns 0 and doesn't set last
error, resulting in the confusing message "System.IO.IOException: Success".
This can be more easily reproduced by running 'make test' in Wine Mono and
running tests/run-tests.exe
MonoTests.System.IO.Pipes.PipeSecurityTest:NamedPipePermissionsActuallyWorkAsync
--
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.
https://bugs.winehq.org/show_bug.cgi?id=48471
Bug ID: 48471
Summary: Mismatching behavior of GetEnvironmentVariableW for
empty / long values
Product: Wine
Version: 5.0-rc4
Hardware: x86
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: kernelbase
Assignee: wine-bugs(a)winehq.org
Reporter: wine(a)thecybershadow.net
Distribution: ---
Attempting to build the Windows version of DMD, the reference compiler for the
D programming language, fails under Wine. This seems to be caused by the
following chain of events:
1. The makefile invokes a build program with a "VERBOSE=" on the command-line:
https://github.com/dlang/dmd/blob/49dfbe54f4a0f62a0694aec9fb4184739903a0c2/…
(Here "$(VERBOSE)" is not set and expands to the empty string.)
2. The build program registers the command-line arguments into the process
environment:
https://github.com/dlang/dmd/blob/49dfbe54f4a0f62a0694aec9fb4184739903a0c2/…
This sets the environment variable VERBOSE to the empty string.
3. Later, it attempts to check if the "VERBOSE" variable is in the environment:
https://github.com/dlang/dmd/blob/49dfbe54f4a0f62a0694aec9fb4184739903a0c2/…
4. This calls the following Windows code in the standard library to read the
environment:
https://github.com/dlang/phobos/blob/e373b4e77448bc11c6e4ea6c85bcdb8f7ab86f…
5. For empty variables, the code behaves differently in Windows and Wine -
Wine's implementation returns 0, while Windows returns 1. As a result, the
standard library code throws an exception under Wine.
Writing a test program reveals further differences. The program:
#include <stdio.h>
#include <windows.h>
void main()
{
WCHAR buf[4];
DWORD size;
int len, i;
for (len = 0; len <= 2; len++)
{
for (i = 0; i < len; i++)
buf[i] = 'a';
buf[len] = 0;
SetEnvironmentVariableW(L"TESTVAR", buf);
for (i = 0; i <= len + 1; i++)
{
DWORD err;
SetLastError(1);
buf[0] = 1;
size = GetEnvironmentVariableW(L"TESTVAR", buf, i);
err = GetLastError();
printf("%d->%d: size=%d error=%d buf[0]=%d\n",
len, i, size, err, buf[0]);
}
printf("\n");
}
}
Output on Windows [Version 10.0.17134.648]:
0->0: size=1 error=1 buf[0]=1
0->1: size=0 error=1 buf[0]=0
1->0: size=2 error=1 buf[0]=1
1->1: size=2 error=1 buf[0]=0
1->2: size=1 error=1 buf[0]=97
2->0: size=3 error=1 buf[0]=1
2->1: size=3 error=1 buf[0]=0
2->2: size=3 error=1 buf[0]=0
2->3: size=2 error=1 buf[0]=97
Output on Wine:
0->0: size=0 error=1 buf[0]=1
0->1: size=0 error=1 buf[0]=0
1->0: size=2 error=122 buf[0]=1
1->1: size=2 error=122 buf[0]=1
1->2: size=1 error=1 buf[0]=97
2->0: size=3 error=122 buf[0]=1
2->1: size=3 error=122 buf[0]=1
2->2: size=3 error=122 buf[0]=1
2->3: size=2 error=1 buf[0]=97
We can observe these differences:
1. Wine returns 0 and not 1 when the variable is empty and the function is
given a zero-length buffer.
2. Wine sets the last error to ERROR_INSUFFICIENT_BUFFER, while Windows
doesn't.
3. Windows zeroes the buffer if the size is non-zero but still insufficient to
hold the value. (This is not a bug as the behavior is specified in the
documentation to be undefined.)
--
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.
http://bugs.winehq.org/show_bug.cgi?id=33317
Bug #: 33317
Summary: Python error Fatal Python error: buffer overflow in
getpathp.c's joinpath() when executing.
Product: Wine
Version: unspecified
Platform: x86-64
OS/Version: Linux
Status: UNCONFIRMED
Severity: blocker
Priority: P2
Component: -unknown
AssignedTo: wine-bugs(a)winehq.org
ReportedBy: andrew.thomas(a)hpcwales.co.uk
Classification: Unclassified
Created attachment 44067
--> http://bugs.winehq.org/attachment.cgi?id=44067
Lwsn output from running under wine
Wine Version : wine64 --version
wine-1.5.25
(64 Bit version)
GCC Version : gcc --version
gcc (GCC) 4.6.2
Python Version : python --version
Python 2.7.3
Operating Systems Used:
cat /etc/redhat-release
Red Hat Enterprise Linux Server release 5.5 (Tikanga)
I have also tried on :
cat /etc/redhat-release
CentOS release 5.5 (Final)
Program trying to run lwsn.exe (network render module part of Lightwave :
https://www.lightwave3d.com/ ). 30 Day trial available.
Command used:
wine lwsn.exe -3 -cLWEXT11-64.CFG -d"z:\home\andy.thomas\Atticus"
Scenes\black.lws 1 1
Problem,
I compiled wine and setup lwsn.exe in accordance with this article:
http://lordtangent.blogspot.co.uk/2007/01/running-lightwave-screamernet-lws…
Initially it worked fine when running from the command line. I then wrapped it
up in a batch script to be sent to our Linux cluster but got a Python error
message :
Fatal Python error: buffer overflow in getpathp.c's joinpath()
I tried to execute interactively on the cluster and this worked fine but when
executed from a script it gives the above error.
I launched a forum post (as I a haven't done much troubleshooting with wine) :
http://forum.winehq.org/viewtopic.php?f=8&t=18632
I have tried the recommendations but had no success.
I re-compiled wine with the above gcc compiler and a more up to date version of
Python but I can no longer execute on the command line. I now get the Python
error regardless of how I execute the command.
Any help would be greatly appreciated. If you need any further debugging please
let me know.
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=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.