IRC logs of Libera.Chat #BZFlag for Friday, 2024-12-13

Juestlol wut01:33
Juestusing visual studio remote debugger is a network hazard01:34
Juestso instead i recommend using windbg 01:34
Juestadd a . to the symbol path env var to allow/make sure that pdb files in the same folder as the binary are read01:35
blast007Dr. Memory didn't work there either01:35
Juestweird01:35
Juesti have hyper-v enabled and it works fine01:35
Juestso no idea whats up01:35
Juestcontrolled folders maybe?01:35
blast007dunno what you mean01:36
Juestnvm, its a default in win 1101:36
Juestbut it exists in win10 too iirc01:36
Juestuhmmmmmmmmm01:36
Juestdo you have windows sdk debuggers installed?01:36
Juestthat should give you the needed dbghelp with support for downloading symbols online01:37
blast007I have Visual C++ installed01:37
Juestwindows sdk debugger is simpler in the sense it doesnt load everything all at once but only as its needed01:37
Juestits only for native code and drivers01:38
Juestanyway01:38
Juesti've been using windbg01:38
blast007I don't need a debugger though, I need something that will find memory issues01:38
Juestoh okay right01:38
Juestidk why it works on my other computer but not on yours01:38
Juestmy*01:38
Juestmeh01:38
*** Zehra <Zehra!~Yukari@user/yukari> has joined #bzflag01:54
ZehraOn the subject of scriptable languages for plug-ins. I think either some form of a functional language may perhaps work best. It would most closely match the "event" system which is used now.01:57
ZehraAdding to it, it would make perhaps likely sense for some form of "scriptable" world generating functions to be included, but not a high or important priority. (There's a small number of script generated maps, hence not a major consideration/issue.)02:00
JuestZehra: angel script because why not then02:13
ZehraJuest: Taking a brief look, angel script looks almost the same to C++, so unless it doesn't need compiling, we're basically in the same place.02:17
Juestthere are scriptable systems that are c++ism based but arent c++02:17
Zehrawhat advantages you see to using something similar to c++?02:20
*** GEP <GEP!~GEP@c-76-21-169-178.hsd1.va.comcast.net> has joined #bzflag02:20
ZehraBecause I'd see it easy from "if someone knows C++, they can easily use it".02:22
ZehraBut by the same token, a lot of "ideas"/"concepts" aren't easy to express well/cleanly.02:23
ZehraI can't say it is entirely the fault of the language, the API could be better, or better tools could exist.02:24
GEPJuest: per client crash upon joining, and this latest commit https://github.com/BZFlag-Dev/bzflag/commit/63320f915abab8332187f95408b5747630506c79 what if you change that variable "world" to "_world"?02:25
ZehraTo give the simplest example: It's not "easy" implementing flags which would apply/use custom effects. I'm aware it's just a "grievance" for me, because I just use a template now days. (I've worked out "most" of the bugs, except for one "possible" one.)02:31
ZehraIt did cause confusion and bugs for some. But with quick sharing of information, it was resolved quickly.02:35
*** GEP <GEP!~GEP@c-76-21-169-178.hsd1.va.comcast.net> has quit IRC (Ping timeout: 240 seconds)02:37
ZehraIn short: The principle was "grabbing" a flag toggles on an effect, and having the flag drop, it will deactivate it. Simple enough, but not intuitive enough.02:38
*** GEP <GEP!~GEP@c-76-21-169-178.hsd1.va.comcast.net> has joined #bzflag02:44
GEPnever mind, what I will say about the bug as it stands.. while I can reproduce it, it seems a lot harder than on 2.4.2602:47
*** Tobbi is now away: Auto away at Fri Dec 13 02:48:18 2024 UTC02:48
ZehraI can't be sure, but I nearly am sure I located that bug quite a while ago or something02:49
Zehraor a different one02:49
*** Tobbi is back03:08
AgathaC++ is great; the main pain point for plugins is just all the hassle of setting up builds and loading/unloading them. An in-game editor in COBOL would be easier to use than a restart-the-game-every-time plugin system in Go (or whatever the cool kids are lusting after nowadays).03:35
Zehra^This. Especially with custom flags and similar.03:37
*** Tobbi is now away: Auto away at Fri Dec 13 03:59:52 2024 UTC03:59
*** GEP <GEP!~GEP@c-76-21-169-178.hsd1.va.comcast.net> has quit IRC (Ping timeout: 240 seconds)04:18
ZehraI'm taking a wild guess, joinInternetGame(), joinGame()... Check "joinRequested" boolean, something gives me impression there.04:22
BZNotifybzflag: RighthandSon commented on issue #128 "Client crash when hitting Connect multiple times" by Juesto (https://github.com/BZFlag-Dev/bzflag/issues/128#issuecomment-2540533709): at the head 2.4 I was able to reproduce and get a similar back trac...04:34
ZehraDo we know if it fails between joinInternetGame and joinInternetGame2?04:39
ZehraI'm guessing what happens is a loop of some sorts:04:48
ZehraJoinGame() -> JoinRequested=, JoinInternetGame() -> (Theory: JoinGame gets called again) -> JoinInternetGame2 -> JoinGame() -> JoinRequested=, JoinInternetGame() -> (joinGame might be called again) -> JoinInternetGame204:51
ZehraGEP's comment might indicate that the player is "interacting" with a world, while it's being modified. (Less likely of being run when the world is modified, reducing the bugs "probability".)04:53
*** I_Died_Once <I_Died_Once!~I_Died_On@c-98-219-34-189.hsd1.ga.comcast.net> has quit IRC (Ping timeout: 248 seconds)05:14
*** Zehra <Zehra!~Yukari@user/yukari> has quit IRC (Quit: Leaving)05:38
*** Sgeo <Sgeo!~Sgeo@user/sgeo> has quit IRC (Read error: Connection reset by peer)07:20
*** Tobbi is back07:52
BZNotify2.4 @ bzflag: atupone pushed 1 commit (https://github.com/BZFlag-Dev/bzflag/compare/63320f915aba...f500b9400bd0):08:16
BZNotify2.4 @ bzflag: atupone f500b9: playing.cxx: no world -> no tank (https://github.com/BZFlag-Dev/bzflag/commit/f500b9400bd03e91af3d70963b0f14be3e029829)08:16
tuponefixed last stack trace, but I'm expecting more08:16
tuponeworld seems null in this case08:17
blast007tupone: I got it to crash on linux as well.  I commented the two allow/deny lines in ~/.bzf/DownloadAccess.txt and joined the Planet Mofo server and hit connect again as soon as it started downloading textures.09:17
blast007and to repeat the test, I delete ~/.bzf/cache/http/images.planetmofo.com/09:18
blast007here was the valgrind output: https://gist.github.com/blast007/5d72faf24b382a9fd39e4e8b78a65d6a09:20
blast007sorry, I meant ~/.bzf/cache/http/images.planet-mofo.com/  (missed the hyphen)09:25
tuponecan you do with sanitizers ?09:34
tuponeif not, I will redo the step when at home09:37
blast007k, building it again09:42
tupone-g -O1 or -O0 09:44
blast007==637850==ASan runtime does not come first in initial library list; you should either link runtime to your application or manually preload it with LD_PRELOAD.09:45
blast007should I *not* run it in valgrind?09:46
blast007sounds like valgrind doesn't support asan09:46
blast007I configured with --enable-debug, so it would do that -g -O0 right?09:48
blast007(seems so)09:49
blast007https://gist.github.com/blast007/5d72faf24b382a9fd39e4e8b78a65d6a#file-asan-ubsan-txt09:49
tuponeno need for valgrind10:12
blast007I think the issue is that texture downloads don't get aborted when you "cancel" the join (and I also don't think we cancel the join completely even without downloads)10:30
blast007so textures still finish downloading and then call joinInternetGame2()10:30
tuponeBut can you run without valgrind but with asan and ubsan?10:32
*** Lantizia_ <Lantizia_!~Lantizia@user/lantizia> has quit IRC (Ping timeout: 252 seconds)10:33
tuponeThe problem that I found, when it crashed at me was related only to the world 10:33
tuponeBut there are other problem that I was not finding, maybe the texture download10:34
*** FastLizard4 is back10:57
blast007that was without valgrind.11:10
blast007the asan-ubsan.txt  is the output I get when I crash it without valgrind11:10
tuponeok. so both asan & ubsan. that trace is easy to fix (seems).11:18
*** FastLizard4 is now away: AWAY from keyboard11:18
tuponejust to check the world at those locations11:19
tuponeprobably there is a more elegant solution like deleting myTank, but I cannot find it11:21
*** Lantizia <Lantizia!~Lantizia@user/lantizia> has joined #bzflag11:31
blast007It's probably not worth the time/effort to fix this right now.  A more major refactor should happen for our join code at some point.11:37
*** Tobbi is now away: Auto away at Fri Dec 13 11:52:09 2024 UTC11:52
*** FastLizard4 is back11:55
*** Tobbi is back12:15
*** I_Died_Once <I_Died_Once!~I_Died_On@c-98-219-34-189.hsd1.ga.comcast.net> has joined #bzflag12:20
*** FastLizard4 is now away: AWAY from keyboard12:23
*** FastLizard4 is now away: GONE - Screen Detached and Disconnected from IRC (I'm probably asleep, at work, or doing something in real life)12:31
Juestooooooooooooooooooooooo12:40
Juestblast007: so it enters a weird state related with textures and kinda why it seems like i cant repro without textures to download?12:41
Juestlol gep, tell that to tupone12:41
BZNotifymaster @ bzfls3: blast007 pushed 1 commit (https://github.com/BZFlag-Dev/bzfls3/compare/e0ee7931967b...9051ccafabab):12:42
BZNotifymaster @ bzfls3: blast007 9051cc: Add error page for 404 and 405. (https://github.com/BZFlag-Dev/bzfls3/commit/9051ccafabab87fe4ddb37b50d60170ec54de343)12:42
Juestblast007: *nothing* gets aborted when you retry a connect, i think12:43
Juestthe texture download does claim to get aborted lol12:44
blast007hitting 'Connect' calls joinGame() and joingame does handle cancelling the *world* download, but not texture downloads.  https://github.com/BZFlag-Dev/bzflag/blob/2.4/src/bzflag/playing.cxx#L518-L53612:45
Juestokay, so in short: lots of issues with joingame() abortion?12:45
blast007the joinRequested = true at the bottom does mean that it will instantly start connecting again instead of *just* cancelling the world download12:46
Juestat least this is good progress, right?12:46
blast007really we just need to clean up the entire join process12:46
Juestcan we do it for 2.4 or it has to come in 2.6?12:47
blast007what I want would require breaking changes12:47
Juestcan you make it good enough without breaking changes or...?12:47
Juestare the breaking changes a hard dependency/requirement?12:48
blast007this is one of those rabbit hole bugs where the more you dig the deeper you get12:48
JuestOh right12:48
Juestseems so, yeah, i did notice12:48
Juesthmmmm12:49
Juestyou think the stacktraces are vaporware and the problem lies in joinGame() entirely?12:49
blast007I did also get Dr. Memory to work.  I used 2.5.0 instead of 2.6.0, but the output I got didn't make any sense, so I gave up with that program :P12:49
Juestoh yeah weird12:50
blast007no, the problem isn't in joinGame at all, really12:50
blast007I was just showing that we *do* cancel part of the join12:50
Juestwell, for me it worked but bzflag crashed12:50
Jueston my other computer dr. memory 2.6.0 works but the computer is sooo slow12:50
blast007we could just remove the ability to cancel joins :)12:50
Juestsure that'd be good actually, disable the connect button12:51
JuestOR add a cancel button that is not in the connect button12:51
Juestthat bypasses the bug entirely12:51
blast007if we could make a cancel button, we'd not have this problem12:51
Juestyep12:51
Juestit should've been done long ago12:51
blast007(meaning, if we could cancel, we wouldn't need a cancel button - the issue isn't the lack of a button)12:51
Juestor i guess we could disable the connect button in first place12:52
blast007just always disable the connect button, then we can never join and thus never trigger any problem12:52
Juesti think that'll be healthier to avoid the treadmill rabbit hole12:52
blast007:)12:52
Juestoh come on blast007, that's too much12:52
blast007lol12:52
blast007honestly, just preventing cancelling during *texture* downloads might be good enough12:53
Juesti get its a joke but realistically.... it does feel like too much :P12:53
blast007texture downloads are pretty fast, unlike the world download from bzfs sometimes12:53
Juesthm, is the "mesh" download broken now or something?12:53
Juestthe progress is (0/0) and then goes to world downloading12:54
Juestyeah cuz its http(s)12:54
blast007dunno what you mean by mesh download.  world download?12:54
Juestthe first stage before the world download12:54
Juestyou know there are like maps that bypass bzw commands or something12:54
Juestfor more complex structures12:54
blast007no, I have no idea what you mean12:55
Juestsorry12:55
blast007the world download can be over HTTP or over BZFlag protocol12:55
blast007the progress (0/0) might be HTTP12:55
Juestim just talking about the ability to make complex geometry without geometry bzw12:55
JuestOH12:55
Juestgothca12:55
Juestgotcha12:55
Juestthat can be cancelled too actually12:55
blast007either way, the client never actually gets BZW12:55
Juestso the issue is with http specifically12:55
blast007it gets a binary representation of the world data12:55
Juestand save world converts that to a bzw however it can?12:56
blast007yeah12:56
blast007it's like taking a photo of a printout :)12:56
Juestoh i see12:56
Juestbut its more like a decompile instead12:56
Juestfeels like so considering its missing stuff for instance12:56
blast007it's a lossy process because the server doesn't send *all* of the map content12:56
Jueststuff like that12:56
Juesthence why it feels more like a decompile :)12:57
Juestis it not possible to actually request the bzw from the server?12:57
blast007nope, not possible with the current code12:57
Juestokay12:58
Juesthmm12:58
Juestwhen you hit host server12:58
Juestit should automatically connect as part of the start server button12:58
Juestimo12:58
blast007that could do a lot better in general :)12:58
Juesthow so?12:58
Juestokay12:58
Juestlet's sort this through:12:58
blast007it auto fills in the hostname, but that doesn't work on all platforms12:58
blast007anyway, gotta go to work12:59
Juestoh okay12:59
Juesttake care blast007 ttyl12:59
Juest127.0.0.1 and ::1 does exist in all platforms12:59
Juestalso localhost12:59
Juestunless dns is broken12:59
Juestblast007: can you place the pdbs for the dependencies and the game in the bin folder? :D13:27
Juesti manually have done that13:27
Juestfor debugging purposes13:27
Juestrepro'd13:43
BZNotifybzflag: Juesto commented on issue #128 "Client crash when hitting Connect multiple times" (https://github.com/BZFlag-Dev/bzflag/issues/128#issuecomment-2541499718): we determined that reproduction is when aborting downloading files ...13:46
blast007is there still an option to turn off downloads?  if so, can you get it to crash with that disabled?13:46
BZNotifybzflag: Juesto commented on issue #128 "Client crash when hitting Connect multiple times" (https://github.com/BZFlag-Dev/bzflag/issues/128#issuecomment-2541499718): we determined that reproduction is when aborting downloading files ...13:47
Juesthmmmmmmm13:53
Juestblast007: i think i got to the point its fixed and its just memory issues on my computer and probably others' end13:54
Juestcan we build bzflag with sanitizer in vs 2017????13:54
Juestalso hi work blast007  :)13:54
Juestyou seem to not be far from work computer?13:54
Juestdo you vnc or use a irc bouncer?13:55
Juest:D13:55
Juestim having a freeze when the player finishes joining13:58
Juestits over windows remote desktop13:58
Juestidk how to debug this further14:01
Juestbut yeah14:01
Juestthat's pretty much it14:01
Juestim glad its over14:01
BZNotifybzflag: Juesto edited issue #128 "Client crash when hitting Connect multiple times at downloading files stage" (https://github.com/BZFlag-Dev/bzflag/issues/128)14:03
BZNotifybzflag: Juesto edited issue #128 "Client crash when hitting Connect multiple times at downloading files stage" (https://github.com/BZFlag-Dev/bzflag/issues/128)14:04
Juestedited OP ^14:05
BZNotifybzflag: Juesto opened issue #369 "Unable to connect after aborting world download" (https://github.com/BZFlag-Dev/bzflag/issues/369)14:07
BZNotifybzflag: Juesto commented on issue #128 "Client crash when hitting Connect multiple times at downloading files stage" (https://github.com/BZFlag-Dev/bzflag/issues/128#issuecomment-2541544337): I suggest removing the ability to click on connect when a connectio...14:09
BZNotifybzflag: Juesto closed issue #128 "Client crash when hitting Connect multiple times at downloading files stage" (https://github.com/BZFlag-Dev/bzflag/issues/128)14:09
blast007I SSH in to a system where irssi runs inside of a screen session14:10
Juestah i see14:10
Juestssh bouncing to a irssi on screen14:10
blast007:)14:10
Juestwhat do you think about the status of the issue?14:17
Juestit also tbf, doesn't make much sense14:17
Juestlike, what did we really fix with the stacktraces?14:17
*** GEP <GEP!~GEP@c-76-21-169-178.hsd1.va.comcast.net> has joined #bzflag14:40
Juestlol gep, tell that comment to tupone :P14:53
Juesthi14:53
*** GEP <GEP!~GEP@c-76-21-169-178.hsd1.va.comcast.net> has quit IRC (Ping timeout: 240 seconds)14:56
*** GEP <GEP!~GEP@c-76-21-169-178.hsd1.va.comcast.net> has joined #bzflag15:17
GEPThe is a reason I don't often join irc :)15:17
GEPblast007: saw your suggestion pertaining to turning off automatic downloads. I was able to get a couple different stack traces having to do with loadingCachedWorlds where is the best place to post them.15:25
blast007I haven't looked at why github issue #128 was closed, so I don't know if that's actually resolved.  But that was/is the one about the client crashing when hitting connect multiple times.15:28
blast0072.4.28 is going to release without a fix for this, but I can see about something after that.15:30
GEPyea it seems like way too deep a problem15:33
BZNotifybzflag: RighthandSon commented on issue #128 "Client crash when hitting Connect multiple times at downloading files stage" by Juesto (https://github.com/BZFlag-Dev/bzflag/issues/128#issuecomment-2541725747): A couple more back traces....15:40
blast007Our join process is rather convoluted.15:41
BZNotifybzflag.org: RighthandSon synchronized pull request #54 "Add documentation of basic client commands" (https://github.com/BZFlag-Dev/bzflag.org/pull/54)15:50
*** Tobbi is now away: Auto away at Fri Dec 13 16:02:16 2024 UTC16:02
*** Sgeo <Sgeo!~Sgeo@user/sgeo> has joined #bzflag16:16
Juestblast007: oh, i closed it because i think we're done with it, but im probably wrong16:18
Juestwhoops16:18
BZNotifybzflag: Juesto reopened issue #128 "Client crash when hitting Connect multiple times at downloading files stage" (https://github.com/BZFlag-Dev/bzflag/issues/128)16:18
JuestGEP: is the reproduction scenario the same as issue #128?16:19
blast007Juest: a cancel button isn't a fix.  the problem is that we don't have a way TO correctly cancel a join.16:19
JuestOH OK16:19
GEPPretty much16:19
Juestwell post it i guess16:19
BZNotifybzflag: Juesto edited issue #128 "Client crash when hitting Connect multiple times" (https://github.com/BZFlag-Dev/bzflag/issues/128)16:20
*** Tobbi is back16:20
BZNotifybzflag: Juesto edited issue #128 "Client crash when hitting Connect multiple times" (https://github.com/BZFlag-Dev/bzflag/issues/128)16:20
Juestupdated16:20
GEPspamming connect in the later stages of connection to a server16:20
Juestyes16:21
BZNotifybzflag.org: RighthandSon synchronized pull request #54 "Add documentation of basic client commands" (https://github.com/BZFlag-Dev/bzflag.org/pull/54)16:39
*** GEP <GEP!~GEP@c-76-21-169-178.hsd1.va.comcast.net> has quit IRC (Quit: Client closed)17:31
tuponeI put the network to 100Mb/s and I was able to kill it, 2.5G is too much to get the texture window 17:55
Juestlol17:58
Juestfancy17:58
tuponea reminder: to get stack trace with ubsan: export UBSAN_OPTIONS="print_stacktrace=1:halt_on_error=1"18:01
blast007so what you're saying is that my powerline ethernet connection that gets only around 30 to 50 Mbps is ideal for this test ;)18:03
Juestlmfao18:05
*** FastLizard4 is back19:06
tupone:)19:07
*** FastLizard4 is now away: AWAY from keyboard19:24
BZNotify2.4 @ bzflag: atupone pushed 2 commits (https://github.com/BZFlag-Dev/bzflag/compare/f500b9400bd0...070d498b7a9f):19:39
BZNotify2.4 @ bzflag: atupone d7d374: LocalPlayer: remove an unused getHitBuilding (https://github.com/BZFlag-Dev/bzflag/commit/d7d3742843d04bf8dab6006d7e40880ed2f8efac)19:39
BZNotify2.4 @ bzflag: atupone 070d49: Fix crashes when world is null after connect spam (https://github.com/BZFlag-Dev/bzflag/commit/070d498b7a9f50926f213a8362503ddd296054d5)19:39
tuponehope it fixes all what is happening at connect spawm19:39
tuponeput back net at 2.5G19:39
Juesttupone: wanna bet its fixed for my computer or im going to face the issue because the memory is fucked?20:59
Juesti have a windows 7 computer to test on too20:59
Juestbut it has some issues20:59
Juestso meh20:59
tuponeJuest: i think is not your memory. your stack trace was always the same21:02
tuponethe fix is not perfect. But it does not crash anymore21:04
Juestoh okay21:13
Juesttupone: i did not try more than once, but i had varying stacktraces so i guess it was multiple issues manifesting "randomly"21:14
Juestgotcha then my memory is mostly fine, yes21:14

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!