#gemrb@irc.freenode.net logs for 6 Aug 2015 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[00:03:37] <-- norito has left IRC (Read error: Connection reset by peer)
[06:44:53] <-- Lightkey has left IRC (Ping timeout: 244 seconds)
[06:57:59] --> Lightkey has joined #gemrb
[07:11:34] --> GeneralDuke has joined #gemrb
[07:26:57] <-- gembot has left IRC (Ping timeout: 264 seconds)
[07:34:18] --> gembot has joined #gemrb
[08:11:39] --> Eli2_ has joined #gemrb
[08:14:57] <-- Eli2 has left IRC (Ping timeout: 264 seconds)
[09:04:23] <lynxlynxlynx> heh, our old cvs repo is still online on sf
[09:05:15] <DrMcCoy> and it now includes malware? ;)
[09:07:36] <lynxlynxlynx> nah, they only do that with packaged stuff
[09:31:30] --> naviabbot has joined #gemrb
[09:34:08] <-- naviabbot has left IRC (Client Quit)
[10:28:45] <Pepelka> [commit] lynxlynxlynx: pst: renamed a silly-named variable in guima https://github.com/gemrb/gemrb/commit/ef3c39a396760aabd8da88ca1e61a9beba0ca789
[10:28:46] <Pepelka> [commit] lynxlynxlynx: Video::Video: init all members in ctor https://github.com/gemrb/gemrb/commit/2c2f77e8f89d80dad0c193d6ec4fbca1596c5cb0
[10:28:47] <Pepelka> [commit] lynxlynxlynx: Highlightable::Highlightable: init all members https://github.com/gemrb/gemrb/commit/fbec648764bdd1f4176cac2e1bdf302a58a2c4a0
[10:28:48] <Pepelka> [commit] lynxlynxlynx: Selectable::Selectable: init all members https://github.com/gemrb/gemrb/commit/bb0052058279c8664fbea00031016ed4229ea8cc
[10:28:49] <Pepelka> [commit] lynxlynxlynx: SpriteCover: init all members in ctor https://github.com/gemrb/gemrb/commit/e9b3315267209d23a58d40881d677327509c4ce0
[10:28:51] <Pepelka> [commit] lynxlynxlynx: pst: don't disable current target mode on float window close https://github.com/gemrb/gemrb/commit/2684510c8bd4754682242f7a12d50860ce3eff55
[10:28:52] <Pepelka> [commit] lynxlynxlynx: pst: removed obsolete fixmes in the float window https://github.com/gemrb/gemrb/commit/2058edcada5a1f019cd3abd30c723721215d6f64
[11:59:43] <lynxlynxlynx> http://paste.debian.net/289695 <-- can anyone make sense of this? It's the pst area anim crash
[11:59:44] <Pepelka> debian Pastezone
[12:00:10] <lynxlynxlynx> ::Covers only does int comparisons btw and valgrind isn't helpful
[12:02:37] <wjp> anim->NextFrame() returning 0x12?
[12:04:20] <wjp> what is anim->pos?
[12:04:35] <lynxlynxlynx> 17
[12:05:02] <lynxlynxlynx> the first frame assignment was ok, otherwise the Covers call would crash
[12:05:29] <wjp> and anim->playReversed ?
[12:05:38] <lynxlynxlynx> false
[12:06:07] <wjp> hrm
[12:06:14] <wjp> is this crash easy to reproduce?
[12:06:53] <lynxlynxlynx> yes
[12:07:08] <lynxlynxlynx> it was first found about two years ago
[12:07:47] <lynxlynxlynx> so, pst, open the console: mta("ar0502")
[12:08:10] <lynxlynxlynx> you'll probably end up in a safe part
[12:08:31] <lynxlynxlynx> then go explore the center, where some molten metal bowls are
[12:08:56] <lynxlynxlynx> or you can just disable fog of war in the gemrb config, so it crashes instantly
[12:09:39] <lynxlynxlynx> do you think it could be a compiler issue?
[12:10:00] <lynxlynxlynx> i always get the same bad pointer too
[12:10:35] <wjp> well, 0x12 is the size of that array
[12:10:53] <wjp> probably that is stored somewhere around the actual frames
[12:11:04] <wjp> maybe frames[-1] or frames[18] or so
[12:11:30] <lynxlynxlynx> with fog of war on, i get a different value
[12:12:03] <wjp> interesting
[12:12:09] <wjp> anyway, I just got the crash too
[12:12:21] <wjp> with a bogus (non-0x12) spr value too
[12:13:39] <wjp> ugh, gemrb doesn't seem to like my saves from the original PST
[12:14:39] <lynxlynxlynx> btw, both -1 (eq) and 18 point to 0 here
[12:14:54] <wjp> pos is 233 for me
[12:15:04] <wjp> (right before the offending NextFrame call)
[12:16:29] <wjp> AFAICT that's the first NextFrame call on that specific anim
[12:24:34] <wjp> hrm
[12:25:23] <lynxlynxlynx> i'll retry with valgrind
[12:26:20] <wjp> pos is initialized correctly
[12:26:29] <wjp> and the object is not destructed it seems
[12:29:56] <lynxlynxlynx> new invalid reads found near
[12:30:58] <lynxlynxlynx> one is at sdlvideo.cpp 585, reading just after what ComputeTrapezoids created
[12:32:04] <lynxlynxlynx> then a larger invalid read at SDLSurfaceSprite2d::GetSprite
[12:32:23] <lynxlynxlynx> and then finally sdlvideo.cpp 587 reads in the bad value
[12:32:43] <lynxlynxlynx> *tries to read the bad value
[12:37:14] <wjp> pos is getting set by AreaAnimation::GetAnimationPiece
[12:42:29] <wjp> so it might be coming straight from AREImporter?
[12:42:50] <lynxlynxlynx> sure
[12:43:11] <lynxlynxlynx> i'm mostly confused on how it can happen at all
[12:43:52] <wjp> AREImporter reads AreaAnimation::frame from file, AreaAnimation::InitAnimation sets Animation::pos to AreaAnimation::frame without checking if it's a valid pos
[12:44:23] <lynxlynxlynx> but why didn't it crash sooner?
[12:45:00] <wjp> when?
[12:45:36] <lynxlynxlynx> a few lines before, when using frame->x and co
[12:45:47] <wjp> it doesn't get there
[12:45:54] <wjp> covers[ac] is false the first frame
[12:46:02] <wjp> (well, 0)
[12:48:17] <lynxlynxlynx> the first frame is at pos 17 or is that just a result of some ceiling check?
[12:49:24] <wjp> the _second_ frame is at pos 17 due to a ceiling check
[12:49:33] <wjp> (NextFrame() updates pos)
[12:50:16] <lynxlynxlynx> ok, makes sense now
[12:53:49] <wjp> this would be a good excuse to make some more members of Animation private
[12:55:13] <lynxlynxlynx> go ahead :)
[12:55:22] <lynxlynxlynx> thanks btw, yer a wizard
[12:58:17] <wjp> watchpoints are nice :-)
[15:21:42] <xrogaan> hay guys
[15:22:16] <xrogaan> since you work a lot on gemrb, do you see an use for tools like travis-ci ?
[15:28:56] <-- GeneralDuke has left IRC (Quit: GeneralDuke)
[15:33:37] <lynxlynxlynx> our buildbot run our minimal test on each build
[15:34:01] <lynxlynxlynx> most stuff in gemrb does not lend itself for easy automated testing though
[15:40:35] <xrogaan> You have to write the tests though
[15:41:23] <xrogaan> also, travis-ci (and other ci thingies) integrate well with github. Especially on pull requests, they tells if the pull request will actually build. Which is nice.
[15:50:53] <lynxlynxlynx> *to
[15:51:10] <lynxlynxlynx> yes, ci is nice
[15:53:24] --> phao has joined #gemrb
[16:19:56] <Pepelka> [commit] lynxlynxlynx: iwd2: play the selected char sound in cg and cycle them https://github.com/gemrb/gemrb/commit/52b93f7d77ca52fe68c07b131f1185b21b83412a
[16:19:57] <Pepelka> [commit] lynxlynxlynx: iwd2: the charsound window has a play button, not a reset button https://github.com/gemrb/gemrb/commit/9b1174c820acb98160578b21900e91f445bd7025
[16:19:58] <Pepelka> [commit] lynxlynxlynx: AutoTable: init tableref https://github.com/gemrb/gemrb/commit/0e0145d066c49ba80b5092468f6f9cbcfdf00186
[16:20:00] <Pepelka> [commit] lynxlynxlynx: AreaAnimation::GetAnimationPiece: set pos properly, thanks wjp! https://github.com/gemrb/gemrb/commit/c238682afa9754d57fabf616229eddec9a96e358
[16:20:01] <Pepelka> [commit] lynxlynxlynx: added an actor returning variant of Game::GetSelectedPCSingle https://github.com/gemrb/gemrb/commit/2e94b29d51b2491cdb2643c294030f134e533906
[16:20:02] <Pepelka> [commit] lynxlynxlynx: use the new GetSelectedPCSingle to fix two confused callers https://github.com/gemrb/gemrb/commit/63a8a6ab4e4f9f69014a214cb787882ca9cc86a6
[16:26:28] <-- phao has left IRC (Ping timeout: 260 seconds)
[17:46:30] --> phao_ has joined #gemrb
[17:59:12] <-- phao_ has left IRC (Quit: Leaving)
[17:59:40] --> phao has joined #gemrb
[18:28:45] <Pepelka> [commit] lynxlynxlynx: extended Map::GetActorByDialog so it returns also infopoints and doors https://github.com/gemrb/gemrb/commit/3fca24c33c8413a9aa34d4bd00a8a08bd17562dc
[18:53:13] --> norito has joined #gemrb
[19:56:02] --> trickyhero has joined #gemrb
[20:00:02] <-- norito has left IRC (Ping timeout: 244 seconds)
[20:02:01] <lynxlynxlynx> oh, i forgot to mention earlier - my experience with watchpoints is mixed
[20:03:17] <lynxlynxlynx> yesterday i was looking at why we mangle pst area notes on save (only one letter remains) and adding a watchpoint just made gdb cry
[20:03:55] <lynxlynxlynx> almost looked like everything froze, but the audio thread kept spamming
[20:11:35] <-- phao has left IRC (Ping timeout: 260 seconds)
[20:12:25] <-- trickyhero has left IRC (Ping timeout: 246 seconds)
[21:13:46] <ebarrett> lynxlynxlynx: hey
[21:14:11] <ebarrett> so i can confirm that the autopause on enemy sighted thing jumps to the wrong area of the map
[21:14:31] <ebarrett> also, it seems in bg1 you cant see how much long drink names cost
[21:15:00] <ebarrett> and im seeing a crash sometimes happen immediately after autosave, will run with gdb next time to give a proper report
[21:15:14] <ebarrett> luckily the save works even if it crashes
[21:19:15] <lynxlynxlynx> odd
[21:19:29] <lynxlynxlynx> the drinking bit is a known regression though
[21:20:11] <lynxlynxlynx> it would be nice if you came up with a reproducable way to trigger off-centering
[21:20:28] <lynxlynxlynx> btw, i suggest you just use git head now, it has some good stuff for bg1 too
[21:20:39] <ebarrett> oh that was another, autosave moves the camera
[21:20:52] <ebarrett> lynxlynxlynx: ok, will try git head at some point
[21:24:10] <lynxlynxlynx> saving has no connection to camera
[21:24:25] <lynxlynxlynx> but it can happen during cutscenes, where things move around
[21:25:25] <ebarrett> i just pressed q and the camera jumped
[21:32:16] <lynxlynxlynx> works as expected for me
[21:33:18] <lynxlynxlynx> ah, but i see what you mean, if you're on the right border it jumps the window width
[21:33:36] <lynxlynxlynx> silly
[22:12:29] <Pepelka> [commit] lynxlynxlynx: gemact.ids: added TriggerWalkTo, as only bg2 has it, but we use it everywhere https://github.com/gemrb/gemrb/commit/ccb7ed349cfa6b0cf69f5653056193b710795585
[22:12:30] <Pepelka> [commit] lynxlynxlynx: HandleActiveRegion: added a modified version of chiv's hack for ip dialogs https://github.com/gemrb/gemrb/commit/bcc820b10be2b10f47b06f1f99d0f8a960dcbf2b
[22:12:31] <Pepelka> [commit] lynxlynxlynx: Scriptable: made two error messages unique for easier following https://github.com/gemrb/gemrb/commit/02b905a05ae5293454841f0e819c02e9024a47a0
[22:12:32] <Pepelka> [commit] lynxlynxlynx: pst has no BreakInstants, so skip adding it for now https://github.com/gemrb/gemrb/commit/6a9e6f80d77a8eca02ff08ce70f82e0b70489d15
[22:12:34] <Pepelka> [commit] lynxlynxlynx: pst: refocus gamewindow on map close, so keyboard shortcuts work properly https://github.com/gemrb/gemrb/commit/a08e2e9b14ffdb7929ebbf2c9bd9667c8c9568e1