jayme-github / steam_idle

Idle Steam apps/games for card drops
GNU General Public License v2.0
14 stars 1 forks source link

steam_idle crashes Steam #1

Closed ghost closed 9 years ago

ghost commented 9 years ago

Steam segfaults and crashed when launching steam_idle - even when launching with Python3. This commit seems to have caused some problems: a87e0f8e7

I rolled back to 2d6ff2bbc and have no issues. Let me know what more information I can provide.

Ubuntu 15.04

jayme-github commented 9 years ago

Thanks for the report. What architecture and steam client version are you running? Could you post the output of steam_idle?

jayme-github commented 9 years ago

I was able to reproduce this once. Steam client crashed with segfault and installed an update afterwards (version 1440016726). Now I'm unable to reproduce it again. Could you please re-check with the latest stable steam client version?

ghost commented 9 years ago

I was also using 1440016726 on Ubuntu 15.04 64 bit. I tried it again just and it seems to work fine now.

The only difference is that all the crashes occurred when idling more than 1 game for the initial 2 hour period. Launching multiple games at once seemed to be the only difference so far. I'm only idling 1 game right now since I only have 1 game which requires the initial 2 hour sleep period. I'll keep an eye on it, and see if I can reproduce it once I have multiple games that need to sleep. Thanks!

jayme-github commented 9 years ago

It breaks on "multi-idle" for me too (again now, but only once and after that it's running fine). The output looks as if the idle child's don't spawn correctly:

3 games with a total of 8 card drops left:
Sleeping for 1:54:00 till Mon Aug 24 12:16:06 2015

When it's working we see the idle childs spawn (for two games in my case):

3 games with a total of 8 card drops left:
Sleeping for 1:54:00 till Mon Aug 24 12:20:46 2015
Idle-2-[232770](9290): Ideling appid 232770
Idle-1-[262830](9289): Ideling appid 262830

I've added a debug switch -d to master and a new pre-python3 branch that is based on 2d6ff2bbc3292bc91a8002c2695f6850f77f289f. That enables some extra output and disables the redirection of stderr and stdout when loading the steam API. I hope we're able to catch the problem than.

ghost commented 9 years ago

For some reason it's working fine now for multiple game idling. I'll update to latest and test again.

And pre-python3 branch seems to be working fine for now.

jayme-github commented 9 years ago

While experimenting with Qt's threading this occurred again. This is what the steam client dumps to stderr in case of the crash:

/home/buildbot/buildslave/steam_rel_client_linux64/build/src/clientdll/../common/pipes.cpp (735) : CClientPipe::BWriteAndReadResult: BWaitResult failed, disconnected
/home/buildbot/buildslave/steam_rel_client_linux64/build/src/clientdll/../common/pipes.cpp (735) : Fatal assert failed: /home/buildbot/buildslave/steam_rel_client_linux64/build/src/clientdll/../common/pipes.cpp, line 735.  Application exiting.

/home/buildbot/buildslave/steam_rel_client_linux64/build/src/clientdll/../common/pipes.cpp (735) : CClientPipe::BWriteAndReadResult: BWaitResult failed, disconnected
/home/buildbot/buildslave/steam_rel_client_linux64/build/src/clientdll/../common/pipes.cpp (735) : Fatal assert failed: /home/buildbot/buildslave/steam_rel_client_linux64/build/src/clientdll/../common/pipes.cpp, line 735.  Application exiting.

Assert( CClientPipe::BWriteAndReadResult: BWaitResult failed, disconnected ):/home/buildbot/buildslave/steam_rel_client_linux64/build/src/clientdll/../common/pipes.cpp:735

Assert( CClientPipe::BWriteAndReadResult: BWaitResult failed, disconnected ):/home/buildbot/buildslave/steam_rel_client_linux64/build/src/clientdll/../common/pipes.cpp:735

No minidump written, nothing to upload.
_ExitOnFatalAssert
ghost commented 9 years ago

This has occurred again for me several times, but it only occurs on the first time after logging into Steam and so it's kind of hard for me to replicate.

ghost commented 9 years ago

Ok, I was able to catch a crash with a fresh batch of games. Here's what steam spit at me:

https://gist.github.com/xHN35RQ/a6f5ca8d915262c82e39

Let me know if you want /tmp/dumps/assert_20150902205511_1.dmp

Meanwhile steam-idle said this during the crash:

3 games with a total of 15 card drops left:
Sleeping for 2:00:00 till Wed Sep  2 22:55:25 2015
Idle-2-[284850](4879): Ideling appid 284850

EDIT - just realized this is not helpful, as I forgot to use the debug mode to catch the output. argh....

jayme-github commented 9 years ago

The breakpad file (*.dmp) is unfortunately pretty useless because we only have the steam client libs with debugging info stripped of :disappointed:.

But I can reproduce this now with the following steps (in multi-idle mode only!):

This crashed the master branch and the pre-python3 branch for me. So at least that is consistent (I would have been really surprised if the branched would behave differently).

jayme-github commented 9 years ago

Thanks for your help! :+1: Would like to know if this is "fixed" for you too.