#gemrb@irc.freenode.net logs for 7 Dec 2011 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[00:21:41] <-- edheldil_ has left IRC (Ping timeout: 248 seconds)
[00:35:01] --> brad_a has joined #gemrb
[00:48:34] --> edheldil_ has joined #gemrb
[01:12:14] <-- edheldil_ has left IRC (Ping timeout: 244 seconds)
[02:31:58] <-- brad_a has left IRC (Quit: brad_a)
[02:54:12] <-- Kiranos has left IRC (Ping timeout: 258 seconds)
[02:54:22] --> Kiranos has joined #gemrb
[04:11:46] <-- Gekz has left IRC (Quit: No Ping reply in 180 seconds.)
[04:11:50] --> Gekz_ has joined #gemrb
[04:11:50] <-- Gekz_ has left IRC (Changing host)
[04:11:50] --> Gekz_ has joined #gemrb
[04:37:48] --- Gekz_ is now known as Gekz
[06:10:21] --> jzmer has joined #gemrb
[06:10:41] <jzmer> what is the "Modron" in /topic?
[06:11:43] <jzmer> also how well is the status of gemrb bg 1/2 and iwd 1/2?
[06:25:30] <tomprince> bg1/2 and iwd2 are good, iwd2 doesn't work well.
[06:25:51] <tomprince> the chanel is logged
[06:33:44] <jzmer> thanks. but i suppose duplicate "iwd2" was a typo?
[06:49:58] <tomprince> Yes, iwd1 is well supooreted, iwd2 not so much.
[06:51:41] <jzmer> thanks for the correction.
[06:56:29] --> edheldil_ has joined #gemrb
[07:54:36] <-- edheldil_ has left IRC (Ping timeout: 255 seconds)
[07:58:46] <-- jzmer has left IRC (Quit: Page closed)
[08:28:04] --> lynxlynxlynx has joined #gemrb
[08:28:05] <-- lynxlynxlynx has left IRC (Changing host)
[08:28:05] --> lynxlynxlynx has joined #gemrb
[08:28:05] --- ChanServ gives channel operator status to lynxlynxlynx
[09:26:07] --> SiENcE has joined #gemrb
[09:59:17] <-- SiENcE has left IRC (Quit: @all: cya)
[10:37:18] --> SiENcE has joined #gemrb
[14:14:02] <-- SiENcE has left IRC (Quit: @all: cya)
[14:42:24] --> SiENcE has joined #gemrb
[14:55:51] <lynxlynxlynx> huh, the sorcerer/monk/cleric starts with 200 luck
[14:59:06] <lynxlynxlynx> i remember having the same issue with sorcerer/monk, but i think i just cheated it away
[15:39:19] <edheldil> not THAT is a lucky bastard :)
[15:49:23] <lynxlynxlynx> indeed, since all the next ones got a negative one
[15:49:55] <lynxlynxlynx> fatigue influence seems to malfunction here
[16:14:02] <CIA-44> GemRB: 03lynxlupodian * r78f4d70d4dd6 10gemrb/gemrb/core/Scriptable/Actor.cpp:
[16:14:02] <CIA-44> GemRB: skip fatigue addition if the big bang hasn't happened yet
[16:14:02] <CIA-44> GemRB: fixes pcs starting as tired
[16:14:02] <CIA-44> GemRB: 03lynxlupodian * rd5cb3be40a2b 10gemrb/gemrb/core/Scriptable/Actor.cpp: RefreshPCStats: don't needlessly refetch the game pointer
[16:23:01] --> Maighstir has joined #gemrb
[16:38:48] --> Beh0lder has joined #gemrb
[16:38:57] <Beh0lder> hi
[16:40:11] <edheldil> Hi
[17:12:34] <-- SiENcE has left IRC (Quit: @all: cya)
[17:15:58] --> Maighstir_ has joined #gemrb
[17:16:58] --> Maighstir__ has joined #gemrb
[17:17:24] --> brad_a has joined #gemrb
[17:19:49] <-- Maighstir has left IRC (Ping timeout: 248 seconds)
[17:20:22] <-- Maighstir_ has left IRC (Ping timeout: 252 seconds)
[17:38:11] <-- brad_a has left IRC (Quit: brad_a)
[17:55:24] --> brad_a has joined #gemrb
[18:24:17] --> Yoshimo has joined #gemrb
[18:43:02] <-- Beh0lder has left #gemrb
[19:02:48] --> edheldil_ has joined #gemrb
[19:21:53] <-- Yoshimo has left IRC (Quit: Yoshimo)
[19:26:50] --> Beh0lder has joined #gemrb
[19:26:51] <-- Beh0lder has left #gemrb
[20:06:54] --> Beholder has joined #gemrb
[20:16:41] --> Yoshimo has joined #gemrb
[20:17:08] <-- edheldil_ has left IRC (Ping timeout: 252 seconds)
[20:23:59] --> SiENcE has joined #gemrb
[20:36:45] <Yoshimo> "skip fatigue addition if the big bang hasn't happened yet", what is the bigbang lynx?
[20:40:28] <lynxlynxlynx> start of time
[20:47:25] <Yoshimo> also in gemrb, start of gametime ticking since character creation?
[21:06:01] <lynxlynxlynx> yes
[21:06:05] <-- |Cable| has left IRC (Remote host closed the connection)
[21:07:55] --> |Cable| has joined #gemrb
[21:21:38] <-- Beholder has left IRC (Ping timeout: 252 seconds)
[21:28:32] <-- SiENcE has left IRC (Quit: cya)
[21:41:06] <lynxlynxlynx> awesome
[21:41:15] <lynxlynxlynx> remove magic triggers an assert in glibc
[21:43:15] <lynxlynxlynx> from our opendir call
[21:43:54] <lynxlynxlynx> http://pastebin.com/VGvxKGAY
[21:44:26] <brad_a> that is one hell of an assertion!
[21:45:12] <fuzzie> seems almost certainly likely to be memory corruption
[21:45:39] <fuzzie> oh yes, in malloc.c, definitely so
[21:45:40] <-- Yoshimo has left IRC (Quit: Yoshimo)
[21:46:12] <lynxlynxlynx> it's nicely reproducable
[21:46:47] <fuzzie> valgrind?
[21:47:14] <lynxlynxlynx> ok
[21:51:19] <lynxlynxlynx> nothing this time, retrying
[21:53:46] <lynxlynxlynx> nope
[21:54:03] <lynxlynxlynx> looks like valgrind has a better memory implementation
[21:54:12] <lynxlynxlynx> but nothing is in the log either
[21:54:59] <fuzzie> worrying
[21:57:49] <fuzzie> what's the rest of the stack?
[22:00:55] <lynxlynxlynx> feels like it happens on payload
[22:01:19] <lynxlynxlynx> rest of the stack is on the bin or did you mean something else?
[22:01:37] <fuzzie> i don't see anything below the Draw there
[22:02:09] <fuzzie> and it'd also be nice to make sure the audio thread is asleep, if possible
[22:03:00] <fuzzie> since i bet opendir() isn't thread-safe
[22:03:36] <fuzzie> although the manpage has no warning, so perhaps it is
[22:03:57] <lynxlynxlynx> drawwindow(s)
[22:04:43] <lynxlynxlynx> this is with null sound, so is there any audio thread at all?
[22:04:47] <fuzzie> yes, i guess that should be fine so it's weird
[22:04:51] <fuzzie> no, with nullsound it's fine
[22:04:53] <fuzzie> and then it's just weird
[22:05:20] <fuzzie> presumably must be corruption caused by projectile in that case
[22:07:17] <lynxlynxlynx> oh, this time it was a different one http://pastebin.com/VwWxMpy1 (yes in projectile)
[22:10:37] <fuzzie> really weird :/
[22:11:51] <lynxlynxlynx> are the pointer values ok? 0x7fffffffb670 and similar are very high
[22:12:36] <lynxlynxlynx> they do point to nice strings, it just seems odd compared to other pointers
[22:13:00] <fuzzie> no idea
[22:13:18] <fuzzie> that is interesting
[22:14:37] <fuzzie> the 0x7fff.... is the top of the allowed address space, i know
[22:14:53] <fuzzie> but if gdb is happy with the pointers then i assume they're fine
[22:15:26] <fuzzie> unless you're really running out of space there after something allocated huge huge amounts by mistake
[22:15:52] <fuzzie> i guess you could check the vsize in 'top' or similar :-p but i don't know anything about it so i'm sure it's harmless
[22:16:12] <brad_a> wouldnt malloc log that if there was no more available memory?
[22:16:52] <fuzzie> oh i guess the 0x7fff... is probably just your gemrb core lib
[22:17:03] <fuzzie> haven't seen this before
[22:19:05] <fuzzie> i'm a bit dubious about the sanity of messing with the return value of dir.GetName() in GetPortaits but it's surely not a bug
[22:21:41] <fuzzie> and i think probably the memory corruption happens first, so randomly peering at the VFS code is not a sane plan
[22:21:56] <fuzzie> i can look at it myself tomorrow i guess, if i actually remember and someone doesn't fix it overnight
[22:22:49] <lynxlynxlynx> brad_a: can you try to reproduce?
[22:23:01] <brad_a> i would love to, but im at work ATM
[22:23:24] <lynxlynxlynx> ok
[22:23:26] <brad_a> tell me hat i need ot do and i can do it afterwords
[22:23:42] <lynxlynxlynx> do you have tob'
[22:23:54] <lynxlynxlynx> the whole bg2
[22:23:59] <brad_a> yes i do
[22:24:32] <fuzzie> well, i mean, i can't reproduce
[22:25:02] <fuzzie> on first try
[22:25:21] <lynxlynxlynx> ok, then just start a tob game and pick a sorcerer. This way you'll be able to autolearn "remove magic" (level 3, white spiral )
[22:25:57] <brad_a> and then just cast it?
[22:25:58] <fuzzie> so more detailed reproduction recipe (save?) would be more helpful than me trying at random
[22:26:00] <lynxlynxlynx> hmpf, i can't either there
[22:26:16] <fuzzie> perhaps it is actually corruption due to the payload?
[22:26:25] <fuzzie> someone has magic which causes crazy when removed?
[22:26:31] <lynxlynxlynx> i'll up the save, but you'll be missing some data, since it is a custom class
[22:28:29] <lynxlynxlynx> this time it died a bit more meaningfully: *** glibc detected *** gemrb/gemrb: free(): invalid next size (fast): 0x0000000001e4bcb0 ***
[22:28:43] <lynxlynxlynx> now the address base is missing
[22:28:45] <fuzzie> i.e. corrupt :|
[22:29:19] <lynxlynxlynx> i'll try a make clean first
[22:29:44] <fuzzie> well, i would perhaps assume that 0x7fff.. is the stack and 0x0000.. is the heap in your dump
[22:30:18] <fuzzie> except then the addresses make no sense
[22:30:22] <lynxlynxlynx> and for some reason sdlaudio is mentioned in the memory map dump
[22:30:25] <fuzzie> but i get the exact same results on amd64
[22:30:46] <fuzzie> since tomprince's changes, all the plugins get loaded, it's just they don't get initialised if they're not used
[22:32:34] <fuzzie> (so: harmless)
[22:34:43] <lynxlynxlynx> ok
[22:34:53] <lynxlynxlynx> no change with a clean build
[22:35:07] <lynxlynxlynx> no crash with a fresh tob char, so it can't be the new class either
[22:35:26] <brad_a> aren't there a bunch of usefull malloc debugging options in GDB?
[22:35:52] <brad_a> so its only crashing with a particular save?
[22:36:41] <lynxlynxlynx> http://ebm.si/p/td-tekstil/boom.tar.bz2
[22:36:51] <fuzzie> thanks
[22:37:13] <lynxlynxlynx> it's the first time i cast that spell
[22:37:57] <lynxlynxlynx> it worked in another save
[22:38:05] <lynxlynxlynx> BUT when i tried to reload it boom
[22:38:18] <fuzzie> ah yes, gemrb really doesn't like that without the data
[22:38:57] <lynxlynxlynx> http://sprunge.us/ZdaC?diff
[22:39:10] <lynxlynxlynx> but you'll still be missing a few of the gamedir changes
[22:39:37] <lynxlynxlynx> http://www.gemrb.org/wiki/doku.php?id=mods:sorcerer_monk_cleric <-- it's this
[22:39:53] <lynxlynxlynx> and some other unrelated churn
[22:40:37] <fuzzie> and reproduction is cast on self?
[22:40:45] <lynxlynxlynx> anywhere
[22:40:52] <fuzzie> cast on self fine here
[22:40:57] <lynxlynxlynx> haven't actually tried on self :)
[22:41:02] <fuzzie> cast on ground = crash
[22:41:14] <brad_a> so yes projectile
[22:41:18] <fuzzie> in CreateProjectile, called from CastSpellPointEnd
[22:41:53] <lynxlynxlynx> self works fine here too
[22:42:02] <lynxlynxlynx> but now also a ground cast did :|
[22:42:26] <brad_a> well that was probably just luck that you didnt overflow anything important
[22:42:28] <lynxlynxlynx> but that was pure luck again, since the corruption occurred anyway
[22:42:39] <lynxlynxlynx> yep, crashed on load
[22:42:55] <fuzzie> definitely definitely corruption, yes
[22:43:01] <fuzzie> but i can't valgrind it now, need to sleep
[22:45:45] <lynxlynxlynx> good night
[22:59:41] <lynxlynxlynx> heh, the pit fiend cast remove magic on the lich succesfully too
[23:13:34] <brad_a> lloyd: SDL team finally fixed the compile error when building using xcode
[23:14:13] <brad_a> lynxlynxlynx: are you saying it only craches when your char casts it?
[23:19:35] <lynxlynxlynx> seems so, but i doubt it
[23:30:29] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[23:53:31] --> brad_a_ has joined #gemrb
[23:55:48] <-- brad_a has left IRC (Ping timeout: 255 seconds)
[23:56:24] <-- Maighstir__ has left IRC (Quit: .)
[23:57:35] <-- brad_a_ has left IRC (Ping timeout: 240 seconds)