Minetest logo

IRC log for #minetest-dev, 2015-08-25

| Channels | #minetest-dev index | Today | | Google Search | Plaintext

All times shown according to UTC.

Time Nick Message
00:00 domtron_ joined #minetest-dev
00:30 paramat joined #minetest-dev
00:30 paramat will merge later game#648
00:30 ShadowBot https://github.com/minetest/minetest_game/issues/648 -- Default: Add snow, snowblock, ice to puts_out_fire group by paramat
00:30 paramat left #minetest-dev
00:44 est31 joined #minetest-dev
01:37 paramat joined #minetest-dev
01:41 paramat i'll merge game 648 very soon, i think i can go ahead since it was requested by PilzAdam
01:45 paramat however in the fire mod i will need to split off the extinguishing of flames into a separate lightweight fast-acting abm, as currently it is implemented in a slow-acting abm together with heavy code
01:46 est31 its the same problem as leafdecay I think
01:57 paramat the new abm can work like lavacooling, using 'neighbors = {"group:puts_out_fire"}' so that most of the work is done in the engine, not in lua, this way extinguishing fire can act fairly quickly
02:01 paramat now merging game 648
02:04 paramat complete
02:11 paramat now i feel like finally adding all those missing spaces to nodes.lua ..
02:34 T4im hmm "Double fault error from mod 'default' in callback item_OnPlace(): error in error handling" bug or expected? despite lack of information, I think it boils down to `minetest.place_node({x=0, y=0, z=0}, { name = "default:cactus", param1=0, param2=0 })`
02:35 est31 T4im, what precisely are you doing
02:35 T4im playing around with mtt :)
02:36 T4im placing every node into the world, trying out all sorts of things with them automaticly
02:36 T4im I think minetest.place_node doesn't like placing nodes with on_place = minetest.rotate_node
02:36 T4im but a bit guessing
02:37 T4im not sure if that's to be expected or worth a testcase
02:37 paramat cacatus has 'on_place = minetest.rotate_node', perhaps that's interacting with you'placing' it with a rotation?
02:37 T4im well, that was the guess, yes.. tree trunk the same
02:38 paramat ah ninja'd
02:38 T4im :D
02:38 est31 you do get these double fault errors when lua calls c which calls lua and which raises an error
02:39 T4im ah, good to know
02:40 T4im so somewhere along the line something perhaps expects a player object with direction for the rotation, but doesn't have one
02:40 est31 right now, just as a coincidence, I've gotten enough annoyed by it, to investigate it further
02:41 T4im "Place node with the same effects that a player would cause" I've heared that somewhere before :D
02:42 T4im I think dig_node did claim the same, and then called can_dig without player.. which lead to a few issues, until it was officially declared optional
02:45 OldCoder est31,  http://minetest.org/150824.txt - but other devs say not related. The user and I are prepared to help debug the original problem regardless.
02:45 OldCoder If there are requests or suggestions for next steps, we are attentive.
02:46 hmmmm T4im, just to verify, the full error message says something along the lines of "runtime error in <blah blah>: error in error handling, correct?
02:46 hmmmm and you do get a backtrace?
02:47 T4im no backtrace, no segfault
02:47 hmmmm really
02:47 T4im just "ERROR[main]: ServerError: Double fault error from mod 'default' in callback item_OnPlace(): error in error handling"
02:47 hmmmm and how did you trigger this?
02:47 hmmmm just this? minetest.place_node({x=0, y=0, z=0}, { name = "default:cactus", param1=0, param2=0 })`
02:47 est31 T4im, do you use luajit
02:48 T4im good question.. lemme check quickly.. I've been switching latly a few times
02:48 est31 because embedded lua prints no stack trace, luajit prints that fake trace
02:50 T4im hmm should have been used
02:50 T4im any way to check for sure?
02:51 hmmmm aside from the pause menu..?
02:51 est31 if luajit then print("hi")
02:52 est31 but might be disabled if security is enabled
02:52 hmmmm ah sorry T4im it seems like that's not the kind of double fault error we're looking for
02:52 est31 ?
02:52 hmmmm it's the runtime error/error in error handling one
02:52 hmmmm with a backtrace
02:52 est31 what are we actually looking for
02:53 hmmmm a way to reproduce a true error in error handling without setting debug = nil
02:56 est31 well he got error in error handling, no?
02:57 hmmmm they're caused by separate things
02:57 est31 ?
02:57 hmmmm that error in error handling produces a backtrace and is comparatively easy to track down
02:57 hmmmm it happens when a lua api produces another callback which errors while already inside of a callback
02:58 hmmmm the inner callback produces an error in error handling because lua thinks it's already handling an error
02:58 hmmmm so it gets captured and thrown to the parent callback as a LuaError
02:59 hmmmm the parent callback catches the LuaError as a runtime error and captures a backtrace pointing to where the erroring callback was registered
02:59 hmmmm err, where the erroring callback was triggered
02:59 est31 builtin/game/item.lua:276
02:59 hmmmm we cannot "fix" this, it's a lua thing
02:59 est31 very helpful
03:00 hmmmm what I'm concerned about is the case where people get "error in error handling" with absolutely no other information
03:00 hmmmm this, I'm not able to reproduce except for setting debug = nil which is quite contrieved
03:01 est31 why is getting no backtrace worse than getting a complete shit backtrace?
03:01 hmmmm because you're left with no clue whereas at least you have some indication of what kinds of things could be the problem with the shit backtrace
03:01 hmmmm at least with my diagnostics you can tell which callback it happens in, and to what mod
03:02 est31 you know it was due to somebody placing an item, but thats all, no?
03:02 hmmmm right but that's better than nothing
03:02 est31 but its still a bug
03:02 hmmmm and the former is well understood
03:02 hmmmm while the latter we have no idea why it happens and if it's somehow minetest's fault
03:02 hmmmm the former is a lua bug - not ours
03:02 hmmmm we cannot fix it
03:02 hmmmm therefore i'm not interested
03:02 est31 we can workaroung
03:02 hmmmm how
03:02 est31 workaround*
03:03 est31 pcall from lua itself
03:03 est31 works like a charm
03:03 T4im my luajit between compile-jail and runtime environment got a bit out of sync, running with actual luajit now, with stack trace… now I just need to get a way to copy it out x)
03:04 T4im actually that's not really a helpful stacktrace either, nvm
03:04 hmmmm est31:  how can it be implemented though
03:04 T4im just points me to where I called the place_node
03:04 hmmmm yes but with that information, you know:
03:04 hmmmm 1). which node being placed is causing the failure
03:04 hmmmm 2). the callback actually failing (on_place)
03:05 est31 you dont know 1
03:05 est31 you just know its some node
03:05 est31 from a mod
03:05 hmmmm what's preventing him from adding a print statement?
03:05 T4im well core.place_node({ x=0, y=3, z=0 }, { name = "default:cactus", param1=0, param2=0 }) causes it
03:05 est31 we dont need any error reporting then: <hmmmm> what's preventing him from adding a print statement?
03:05 hmmmm ..
03:05 est31 because everybody can just debug with print statements
03:06 est31 just put print("1") print("2") etc between all lines
03:06 hmmmm look, est, if you are able to fix it, then please do
03:06 hmmmm i'm merely pointing out that of the two variations of the problem, this is much less interesting
03:08 est31 run it with normal lua, you get no stacktrace as well
03:09 est31 also, if its a lua bug, are lua authors aware of it
03:09 hmmmm that's because normal lua does not have a script execution wrapper extension like luajit does
03:10 est31 do we have a minimum example we can show to upstream?
03:10 hmmmm tons.
03:10 hmmmm well not really
03:11 hmmmm you'd have to write your own, but within minetest it's extremely simple to recreate
03:11 est31 the error in error handling also appears with embedded lua
03:11 est31 I dont know about that wrapper, but I do know you get error in error handling also with normal lua
03:12 T4im is there any way to hook into the error event? as in, being able to do some cleanup or print out some last information? a sort of "on_error" routine? (of course with no guarantees of working properly, but rather opportunistic)
03:12 est31 T4im, look at script_error_handler in c_internal.cpp
03:17 est31 hmmmm, Im just wondering, if that error is so well understood, why isnt it neither reported to upstream nor fixed
03:18 hmmmm dunno, ask in #lua or something
03:23 paramat game#649 :P~
03:23 ShadowBot https://github.com/minetest/minetest_game/issues/649 -- Default/nodes.lua: Add missing spaces, shorten lines by paramat
03:36 Niebieski joined #minetest-dev
03:38 hmmmm sorry est, i really just can't do minetest stuff tonight
03:38 hmmmm my brain is fried
03:39 hmmmm why don't you search in the lua source for luaD_throw(L, LUA_ERRERR) and set printfs around them so you can see which is triggered on that kind of error
03:41 est31 I'll hack a pure lua solution tonight, and we can use that as fallback if we dont find a better way to fix the bug
03:46 kahrl can someone explain how m_errorhandler in ScriptApiBase works?
03:46 kahrl it's a lua stack index saved for eternity upon game startup
03:46 est31 yes
03:46 est31 lua_pcall takes it as argument
03:46 kahrl isn't the lua stack essentially cleared whenever you call from lua into C?
03:46 kahrl so this index won't make sense then
03:46 hmmmm that's what I thought but it seems to work for some reason
03:47 kahrl weird
03:47 est31 it doesnt work when you call from lua to c
03:47 hmmmm nested calls probably /don't/ work because the error handler function index is messed up
03:47 hmmmm oh I know why
03:47 hmmmm that's exactly why
03:48 hmmmm it uses the same lua stack for the lifetime of m_script
03:49 hmmmm whenever it does a callback, some more things are pushed onto the stack, some things are popped off, etc. but it's always the same stack
03:49 hmmmm when in lua it gets a new stack
03:50 hmmmm so I assume the reason for the error in error handling is a bad index due to the fact that it relies on an absolute position in a known stack state whereas the callback after a lua api is called gets a new stack
03:50 est31 but the stack is still the same
03:50 est31 its still m_luastack
03:50 hmmmm you mean m_luastate
03:51 est31 L is set in SCRIPTAPI_PRECHECKHEADER to be getStack
03:51 est31 err the result of getStack()
03:51 hmmmm hrm
03:51 kahrl that variable is badly named
03:51 hmmmm i guess you're right, i don't know
03:51 kahrl and getStack too
03:51 kahrl they should call it "state" not "stack"
03:52 hmmmm less talking, more investigating ^^
03:52 kahrl the type is a lua_State
03:52 kahrl which can hold different stacks at different times
03:52 est31 what?!
03:53 est31 you pass that thing to functions, their docs call it "the stack" and it can actually hold multiple stacks?
03:54 kahrl how else would the stack, after a call from lua to C, hold exactly the function's arguments and nothing else?
03:55 kahrl and after the C function returns it reverts to the old stack
03:55 kahrl I imagine it must be a "stack of stacks"
03:55 kahrl where a new stack is created whenever a C function is called
03:56 est31 perhaps C callbacks just get another lua state object?
03:56 kahrl yeah, I guess that's also a possibility
03:56 * paramat waves hand "these are not the error in error handlings you are looking for"
03:57 hmmmm definitely not
03:57 hmmmm wtf
03:57 hmmmm it is a 'stack of stacks'
03:57 hmmmm each 'stack' is contained in a CallInfo structure
03:57 hmmmm this is also how lua tracks the amount of recursion
03:58 hmmmm in any case I'm still not sure why you think my theory is wrong
03:58 Player_2 joined #minetest-dev
03:58 hmmmm instead of guessing, just read the source code
03:58 hmmmm luaD_precall
03:59 kahrl if you were saying that to me, I think the theory is right
03:59 est31 okay, I've hacked a POC for lua based error reporting: https://gist.github.com/est31/e84180467a76f8badb42
03:59 hmmmm @ est
04:08 est31 ok, now I've added an assert(lua_type(L, m_errorhandler) == LUA_TFUNCTION);, and guess whether it succeeded
04:08 est31 so kahrl hmmmm your theory seems to be right
04:15 Niebieski joined #minetest-dev
04:29 paramat left #minetest-dev
04:39 Niebieski joined #minetest-dev
04:49 est31 summary for today's discussion: https://github.com/minetest/minetest/issues/1423#issuecomment-134472243
05:14 paramat joined #minetest-dev
05:14 leat joined #minetest-dev
05:17 paramat okay i will merge game#649 in a moment, before conflicts arise
05:17 ShadowBot https://github.com/minetest/minetest_game/issues/649 -- Default/nodes.lua: Add missing spaces, shorten lines by paramat
05:41 emptty joined #minetest-dev
05:45 paramat now merging game 649
05:48 Hunterz joined #minetest-dev
05:51 Player_2 joined #minetest-dev
05:54 paramat merge complete
05:54 leat joined #minetest-dev
05:54 kahrl NICE https://gist.github.com/kahrl/2f97189739af34a7bf8f
05:55 kahrl previously, of course, the above was an "error in error handling" error
05:55 kahrl but #3112 fixes that
05:55 ShadowBot https://github.com/minetest/minetest/issues/3112 -- Push error handler afresh each time lua_pcall is used by kahrl
05:59 kahrl est31, hmmmm: ^
06:00 hmmmm looks great to me
06:01 hmmmm kahrl, just curious, was the error simply "error in error handling" or did it have a runtime error message as well?
06:01 kahrl one thing I wonder is if lua_pushcfunction would be faster than the lua_rawgeti on LUA_REGISTRYINDEX
06:01 kahrl let me check
06:02 kahrl 2015-08-25 08:02:08: ERROR[Main]: ServerError: Lua: Double fault error from mod 'default' in callback item_OnPlace(): error in error handling
06:02 kahrl that's all
06:02 hmmmm !?!?!
06:02 hmmmm oh shit
06:02 hmmmm no way is that THE error
06:02 hmmmm let me check!
06:03 hmmmm or wait, were you running vanilla lua?
06:03 kahrl yes
06:03 hmmmm ahhh that explains it
06:03 hmmmm so the mystery remains unsolved
06:04 leat joined #minetest-dev
06:05 nrzkt joined #minetest-dev
06:06 nrzkt joined #minetest-dev
06:06 kahrl right, with luajit I get the partial backtrace
06:08 kahrl and with luajit + #3112 I get the full backtrace like in the above gist
06:08 ShadowBot https://github.com/minetest/minetest/issues/3112 -- Push error handler afresh each time lua_pcall is used by kahrl
06:12 Sketch2 I can't find this in the wiki, but is there a limit to how many metadata fields you have per node?
06:13 hmmmm 65535
06:16 Sketch2 oh, for real?  wow, k.
06:16 hmmmm that's not an excuse to design your mod sloppily though
06:17 Sketch2 I'll never need that many.  I just wanted to make sure it wasn't something tiny like 2, 'cuz I know there's only a couple of the regular params available.
06:27 paramat left #minetest-dev
06:48 julienrat joined #minetest-dev
06:49 julienrat left #minetest-dev
07:05 Darcidride joined #minetest-dev
07:32 blaze joined #minetest-dev
07:34 nore joined #minetest-dev
07:36 emptty joined #minetest-dev
07:41 nrzkt joined #minetest-dev
08:00 Yepoleb_ joined #minetest-dev
08:03 Amaz joined #minetest-dev
08:37 Ardonel joined #minetest-dev
09:03 Player_2 joined #minetest-dev
09:10 twoelk joined #minetest-dev
09:11 Darcidride joined #minetest-dev
09:36 leat joined #minetest-dev
09:40 T4im joined #minetest-dev
09:46 deltib joined #minetest-dev
09:46 kilbith joined #minetest-dev
10:16 sfan5 joined #minetest-dev
10:37 Calinou joined #minetest-dev
10:37 tuy joined #minetest-dev
10:40 H-H-H joined #minetest-dev
10:48 leat joined #minetest-dev
11:10 Zeitgeist_ joined #minetest-dev
11:17 neoascetic joined #minetest-dev
11:30 proller joined #minetest-dev
11:38 CraigyDavi joined #minetest-dev
11:40 Gael-de-Sailly joined #minetest-dev
12:01 nore joined #minetest-dev
12:42 proller joined #minetest-dev
13:28 zupoman joined #minetest-dev
13:28 zupoman joined #minetest-dev
13:38 proller joined #minetest-dev
13:52 ElectronLibre joined #minetest-dev
14:05 nore joined #minetest-dev
14:15 Hunterz joined #minetest-dev
14:44 Siva joined #minetest-dev
14:59 Taoki joined #minetest-dev
15:07 tuy joined #minetest-dev
15:22 Robert_Zenz joined #minetest-dev
16:12 szupervigyor joined #minetest-dev
16:20 rubenwardy joined #minetest-dev
16:23 rubenwardy hmmmm, I don't think that Lua scripts should not implicitly override each other
16:23 rubenwardy it is a good feature to have, although it should be done explicitly through some mod.conf
16:23 rubenwardy would be good for server-side as well
16:24 hmmmm joined #minetest-dev
16:24 rubenwardy of course, the feature requires the the overrider knows / supports which version of the other mod will be installed.
16:24 rubenwardy hmmmm, check log (if you haven't already)
16:24 leat joined #minetest-dev
16:24 rubenwardy * scripts should implicityly override each other
16:24 rubenwardy I'm tired :P
16:29 Hunterz joined #minetest-dev
16:37 julienrat joined #minetest-dev
16:37 julienrat left #minetest-dev
16:43 T4im I take it, the only way to deliberately create an unknown node from lua is by voxelmanip; is there any more-or-less reliable way to get an unused content_id, or is there even a reserved one for that purpose?
16:44 Sketch2 put in a do, place a node, remove that mod.
16:44 Sketch2 *do = node
16:44 T4im Sketch2: at runtime
16:45 T4im automaticly :D
16:45 nrzkt joined #minetest-dev
16:46 Sketch2 er mod was what I was trying to type.  mind is on the history of graphics.  um, so why would you want to do this?
16:46 T4im automatic testing
16:47 Sketch2 I don't know how you could place a node that's undefined.  That kinda goes against how computers run
16:47 Sketch2 you have to define something before you can use it
16:47 T4im I already know  that I can, I just asked about some specifics on how to do it right/best
16:48 Sketch2 the only reason they might exist in-game, is because the definition has been taken out.
16:48 T4im or has never been put in...
16:50 domtron joined #minetest-dev
16:51 Sketch2 I know that there was a camo mod that if you placed a player-turret, then dug out the block beneath it...
16:51 Sketch2 it would fall and lose it's metadata
16:52 Sketch2 so it would then shoot you, because it no longer knew who placed it
16:53 Sketch2 I remember modding that mod to fix that glitch.
16:54 Sketch2 I know that's not exactly what you're talking about, but in a similar way, I think your voxelmanip trick is your best bet
16:54 Sketch2 that the stripping has to come after the placing
16:55 Sketch2 maybe if you made a mod to do that somehow
17:00 T4im Sketch2: do you know anything about how content ids for mapnodes are being assigned?
17:07 Sketch2 it's in mapblock.cpp, nameidmapping.cpp, and content_mapnode.cpp
17:08 Sketch2 oh, and nodedef.cpp - what exactly do you need to know?
17:09 T4im exactly what I asked in the first sentence
17:09 leat joined #minetest-dev
17:14 Krock joined #minetest-dev
17:18 Sketch2 so I'm reading it as "How do you purposely get an undefined error node"
17:19 Sketch2 If you want a blank block, I still think you need to place one that's been defined, because that's how computer programs work
17:19 Sketch2 you need to define it before you can use it
17:20 Sketch2 then strip its data, and it should get you what you want
17:20 VanessaE what I do in such a situation is place many such blocks, back up the world, then remove the mod
17:21 VanessaE that way I can just cp the backed-up world back to the worlds dir and start minetest
17:21 VanessaE I use that procedure for testing conversion ABMs and aliases, in particular
17:22 T4im VanessaE: I can't depend on manual removal, and I can set unknown nodes just fine, I just need a good way to get an unused content_id... either by reserveration or by e.g. looping backwards through the available-id space to find the first unused one, or maybe a better idea that someone comes up with
17:22 VanessaE now THAT I am not sure about
17:23 VanessaE can't just randomly pick a high value say in the 20k-30k range?
17:24 Megaf Sketch2: why do you want to create an unkown block?
17:24 H-H-H Sketch2 doesnt
17:24 Megaf Sketch2: you could just create a node with the unkown texture and name it as unkown block
17:24 H-H-H T4im does
17:24 Sketch2 I don't.  T4im does for who-knows-what reason
17:25 T4im VanessaE: well, if there's no better way I probably do something along those lines yea.. best I've come up with yet is looping backward from the max-id and check if a name is associated with it
17:25 Megaf ^ T4im
17:25 T4im Megaf: nope, read up ;)
17:25 Sketch2 lols, that's great
17:25 Megaf !server Megaf
17:25 ShadowBot Megaf: server [--{name,address,ip,players,ping,port} <value>]
17:25 Megaf ops
17:26 T4im VanessaE: but for that to work "good" I'd like to know for example that assignment is done icrementally from the lowest id available.. or whatever procedure is used
17:26 VanessaE T4im: well reason I suggest such a high value is not even Dreambuilder goes that high (it's somewhere in the mid-16k range, if I understand content_id correctly)
17:27 T4im well, would be good to know if it just increments, or if there's some other logic behind it
17:27 T4im :D
17:27 T4im hmmmm probably could answer that in a few words
17:27 T4im :D
17:27 H-H-H look in the code lol
17:28 H-H-H that would tell ya
17:28 VanessaE ^
17:28 T4im well, guess so...
17:28 T4im :)
17:29 VanessaE note that there's a hiccup around 2048, from when the limit was increased.  caused a glitch in older maps.
17:29 VanessaE (specifically, one node, whatever it might have been in the map, became undefined such that it didn't even have a node name anymore)
17:30 leat joined #minetest-dev
17:30 T4im well would be interesting if that ended up as a universal unknown then ;)
17:31 VanessaE heh
17:31 T4im Megaf: the short answer is, I do automatic testing; like placing all nodes of a registered item space against unknown nodes in order to check if they would crash (like when they forget checking for definition), so fake texture won't do :P
17:31 T4im pointed_thing crazynesses
17:37 T4im "CONTENT_NC" -- "yay, a no-content reserveration... oh wait.. that's a nyancat" -_-
17:39 VanessaE haha
17:51 T4im oh wait, there's actually really a reservation at 125 \o/
17:58 VanessaE bbl
17:58 T4im bye, and thanks :)
18:05 julienrat joined #minetest-dev
18:10 twoelk|2 joined #minetest-dev
18:18 Gael-de-Sailly joined #minetest-dev
18:18 exoplanet joined #minetest-dev
18:20 Zeitgeist_ joined #minetest-dev
18:23 Zeitgeist_ joined #minetest-dev
18:30 domtron joined #minetest-dev
18:40 MinetestForFun joined #minetest-dev
18:43 sfan5 joined #minetest-dev
18:53 nanepiwo is there any way to make a node interacteable by those without interact?
18:54 Taoki joined #minetest-dev
19:00 nanepiwo ill assume no without editing the CPP code
19:20 nore joined #minetest-dev
19:24 est31 joined #minetest-dev
19:25 est31 nanepiwo, no, this isnt possible
19:25 nanepiwo ok
19:25 est31 it is possible to give them interact, and restrict every action, except for that node
19:25 nanepiwo how?
19:26 est31 but in order to genuinely have interact only for some nodes you'd need to edit prediction and other things
19:26 est31 and this is clientside behaviour
19:26 est31 with client scripting this will perhaps become possible
19:26 nanepiwo or I can lock them in a cell with unbreakable nodes :P
19:26 est31 nanepiwo, what's the actual usecase?
19:27 nanepiwo a rules mod similar to https://forum.minetest.net/viewtopic.php?f=9&amp;t=11200
19:27 nanepiwo I don't like the idea of some formspec appearing on join
19:28 nanepiwo I'll try standing on a pad which opens rules.
19:46 celeron55 the thing you can do is give interact to everyone, but actually require something like interact_extra for most things (by using the is_protected api functionality and maybe something else)
19:47 celeron55 (or maybe call it "member" or whatever suits the particular purpose)
19:50 nanepiwo that could work
19:55 proller joined #minetest-dev
20:17 emptty joined #minetest-dev
20:47 johnnyjoy joined #minetest-dev
21:11 AnotherBrick joined #minetest-dev
21:35 OldCoder Didn't the error in error handling bug get fixed? I thought it was patched recently
21:35 OldCoder ERROR[main]: Lua: Double fault error from mod 'riventest' in callback node_on_punch(): error in error handling
21:35 OldCoder In thread 7f08d2ddf740: server.cpp:511: void Server::step(float): A fatal error occurred: Lua: Double fault error from mod 'riventest' iERROR[main]: Lua: Double fault error from mod 'riventest' in callback node_on_punch(): error in error handling
21:35 OldCoder In thread 7f08d2ddf740: server.cpp:511: void Server::step(float): A fatal error occurred: Lua: Double fault error from mod 'riventest' in callback node_on_punch(): error in error handlingn callback node_on_punch(): error in error handling
21:35 OldCoder Sorry, it looks like that pasted twice
21:35 OldCoder
21:37 kahrl OldCoder: the info about what mod and callback it happened in was added
21:37 OldCoder So it still says error in error handling?
21:37 kahrl yes
21:38 OldCoder O.K. thanks; looking into this further
21:38 kahrl I have a PR that should fix some/most/(all?) of those
21:38 OldCoder May I have it as a patch?
21:38 kahrl #3112
21:38 ShadowBot https://github.com/minetest/minetest/issues/3112 -- Push error handler afresh each time lua_pcall is used by kahrl
21:38 OldCoder I will test for you
21:38 OldCoder Reviewing
21:38 kahrl that would be great :)
21:38 * OldCoder will add this right this minute if there is a diff
21:39 OldCoder kahrl, I'm on #3112. Is there a way to get this as a diff or patch?
21:39 ShadowBot https://github.com/minetest/minetest/issues/3112 -- Push error handler afresh each time lua_pcall is used by kahrl
21:39 kahrl wget https://github.com/minetest/minetest/issues/3112.patch
21:39 kahrl then git am 3112.patch
21:40 kahrl oops, make that: wget https://github.com/minetest/minetest/pull/3112.patch
21:40 OldCoder
21:40 OldCoder wget; this includes both commits?
21:40 kahrl yeah
21:41 OldCoder Proceeding and will report back
21:43 proller joined #minetest-dev
21:50 OldCoder kahrl, the patch applied successfully and seems to have worked
21:50 * OldCoder is now able to see where a problem has lurked
21:50 kahrl awesome :)
21:50 OldCoder Cite the time saved as a justification for the PR
21:50 * OldCoder goes to fix the actual bug that has been uncovered
22:32 est31 joined #minetest-dev
22:46 Zeitgeist_ joined #minetest-dev
23:33 VanessaE where is the "source" code for minetest_game's schematics?
23:34 VanessaE (I mean the table data used to create the .mts files in default/schematics)
23:34 Siva joined #minetest-dev
23:35 VanessaE looks like it's this code?  https://github.com/paramat/saveschems/blob/master/init.lua
23:57 wischi joined #minetest-dev

| Channels | #minetest-dev index | Today | | Google Search | Plaintext