Closed Saroumane closed 1 year ago
I have push a new fix, that may fix the issue.
This commit ? https://github.com/michael-n0813/linux-idle-master/commit/8962350f18149dbcc7872e4fb26f0cf792c32f02 It makes no change for me.
Yep that commit :+1:
If you could post a log of the error message that would be helpful.
If I can find a bit of time I'll look into this issue, Thanks.
I restarted the script today and the fix works now, thanks ! I must have missed something yesterday.
I am now running Ubuntu 23.04 (Python 3.11.2 ) and the problem is back. It seems linked to steam-idle.py, I ran a few tests :
[13:54:37]user@host:~/linux-idle-master$ ./steam-idle.py 1
Loading Linux 64bit library
[13:55:19]user@host:~/linux-idle-master$ ./steam-idle.py 2
Loading Linux 64bit library
[13:55:22]user@host:~/linux-idle-master$ ./steam-idle.py 3
Loading Linux 64bit library
[13:55:25]user@host:~/linux-idle-master$ ./steam-idle.py 4
Loading Linux 64bit library
[13:55:28]user@host:~/linux-idle-master$ ./steam-idle.py 5
Loading Linux 64bit library
[13:55:32]user@host:~/linux-idle-master$ ./steam-idle.py 6
Loading Linux 64bit library
[13:55:36]user@host:~/linux-idle-master$ ./steam-idle.py 9
Loading Linux 64bit library
[13:55:39]user@host:~/linux-idle-master$ ./steam-idle.py 10
Loading Linux 64bit library
Setting breakpad minidump AppID = 10
malloc(): invalid size (unsorted)
Aborted
[13:55:40]user@host:~/linux-idle-master$ ./steam-idle.py 8
Loading Linux 64bit library
[13:55:46]user@host:~/linux-idle-master$ ./steam-idle.py 11
Loading Linux 64bit library
[13:55:53]user@host:~/linux-idle-master$ ./steam-idle.py 10
Loading Linux 64bit library
Setting breakpad minidump AppID = 10
malloc(): invalid size (unsorted)
Aborted
[13:55:56]user@host:~/linux-idle-master$ ./steam-idle.py 12
Loading Linux 64bit library
[13:56:01]user@host:~/linux-idle-master$ ./steam-idle.py 500
Loading Linux 64bit library
Setting breakpad minidump AppID = 500
malloc(): invalid size (unsorted)
Aborted
[13:56:06]user@host:~/linux-idle-master$ ./steam-idle.py 501
Loading Linux 64bit library
[13:56:14]user@host:~/linux-idle-master$ ./steam-idle.py 502
Loading Linux 64bit library
[13:56:20]user@host:~/linux-idle-master$ ./steam-idle.py 5000
Loading Linux 64bit library
[13:56:27]user@host:~/linux-idle-master$ ./steam-idle.py 50000
Loading Linux 64bit library
Setting breakpad minidump AppID = 50000
malloc(): invalid size (unsorted)
Aborted
[13:56:30]user@host:~/linux-idle-master$ ./steam-idle.py 500000
Loading Linux 64bit library
[13:56:35]user@host:~/linux-idle-master$
Hey mate,
This is an issue with steamAPI all the crashes happen only when the steamAPI tries to launch a real game, App 10 (Counter Strike), App 500 (Left 4 Dead), App 50000 (Nimbus). All the other numbers are not game IDs and steam will not launch them because they don't exist.
This is what should show up
Loading Linux 64bit library
Setting breakpad minidump AppID = 500
Steam_SetMinidumpSteamID: Caching Steam ID: ####Your-ID#### [API loaded no]
What happens when you try steam steam://rungameid/###
### is a gameID of a game you have installed.
I have NO idea on how to trouble shoot this for you. Are you on steam beta? Do you have any other problems launching games??
Sorry I can't be of more help.
Sorry, I chose wrong values for my test.
This a lot more interesting : 1/ I tested with a real game I own, and it fails like this :
$ python steam-idle.py 1090630
Loading Linux 64bit library
Setting breakpad minidump AppID = 1090630
malloc(): invalid size (unsorted)
Aborted
2/ I modified steam-idle.py
by adding 6 times print("ok")
near the end of file. (Their place does not seem to matter, initially they were scattered in the python file. But 5 print("ok")
was not enough.)
except:
print("Couldn't initialize Steam API")
sys.exit()
print("ok")
print("ok")
print("ok")
print("ok")
print("ok")
gui = init_gui(str_app_id)
gui.mainloop()
3/ now it works :
$ python steam-idle.py 1090630
Loading Linux 64bit library
Setting breakpad minidump AppID = 1090630
Steam_SetMinidumpSteamID: Caching Steam ID: ###### [API loaded no]
So I suspect there is something about "memory/variables initialization" that is "fixed" by the print
instructions I added.
Can't tell more, I don't know memory management for python.
Edit :
I moved linux-idle-master
to a different place (a subfolder of my $HOME), and it fails again.
But if I remove all print("ok")
except one, it works again.
Sorry but as I said, this is an issue with steamapi or some other library steam uses, I don't know why it sometimes works and sometimes fails but no amount of prints will change how this script works. Maybe try restarting steam and trying again?
Ok I understand. Now, without modifying anything, I see another different behavior : the "idling" window does not appear (so I guess Steam API does not answer) and I get a "free(): invalid pointer" in the log. So maybe it's a mix of problems on my setup and Steam API acting erratically.
Ubuntu last upgrade (22.04) seems to partially broke this python script. => No "idling window" is created, but the idling seems to work on steam client. So I guess it is only a cosmetic issue.
Error message in the log : malloc(): invalid size (unsorted)