--- Log opened Sat Jun 30 00:00:52 2018 20180630 00:31:05< irker229> wesnoth/wesnoth:master Charles Dang 2ad6b60c94 CVideo: tweaked non_interactive logic AppVeyor: All builds passed 20180630 00:33:02-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Remote host closed the connection] 20180630 00:33:20-!- louis94 [~~louis94@109.131.34.255] has quit [Ping timeout: 260 seconds] 20180630 01:44:05-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20180630 01:44:23-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20180630 02:31:45-!- Appleman1234 [~quassel@121.222.147.211] has quit [Ping timeout: 260 seconds] 20180630 03:17:44< irker229> wesnoth/wesnoth:master pentarctagon 649fdc9a62 Remove unused images from Dead Water. AppVeyor: All builds passed 20180630 03:35:13-!- fabi [~fabi@i577BCDD7.versanet.de] has joined #wesnoth-dev 20180630 03:35:13-!- fabi [~fabi@i577BCDD7.versanet.de] has quit [Changing host] 20180630 03:35:13-!- fabi [~fabi@wesnoth/developer/fendrin] has joined #wesnoth-dev 20180630 03:42:08-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has quit [Read error: Connection reset by peer] 20180630 03:45:58-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has joined #wesnoth-dev 20180630 04:17:54<+21WAANAI7> I wonder if gfgtdf's use of timers was the correct fix 20180630 04:18:39<+21WAANAI7> I think setting handled and halt to true might have done the same thing. 20180630 04:19:47<+21WAANAI7> A timer is overkill in any case. 20180630 04:20:09<+21WAANAI7> It would have been possible to use an SDL event, in the same way call_in_main_thread() does. 20180630 04:20:54<+21WAANAI7> (The function itself can't be used directly, because it detects when it's called in the main thread and just runs the passed functor immediately.) 20180630 04:20:55<+21WAANAI7> that too 20180630 04:21:48<+21WAANAI7> I'll definitely investigate a better method 20180630 04:23:34<+21WAANAI7> .....aghhh 20180630 04:23:55<+21WAANAI7> I wish he had asked me for another review once he was done 20180630 04:24:09<+21WAANAI7> there's a whole lot of mess here. 20180630 04:34:20-!- Appleman1234 [~quassel@121.222.147.211] has joined #wesnoth-dev 20180630 05:37:33< irker229> wesnoth/wesnoth:1.14 gfgtdf 9fdf301a53 fix code dublication of mp_join_game::sh AppVeyor: All builds passed 20180630 05:57:08<+21WAANAI7> yup, it looks like handled and halt work perfectly 20180630 06:00:17<+21WAANAI7> oh, hey, and the wesnothd shutdown works again 20180630 06:00:34<+21WAANAI7> It was fixed in 1.14.3, wasn't it? 20180630 06:00:45<+21WAANAI7> IIRC. 20180630 06:00:50<+21WAANAI7> it was broken for ages before that 20180630 06:11:25<+21WAANAI7> ok, I don't understand what gfgtdf was going for with this scope_exit thing 20180630 06:12:21<+21WAANAI7> cpp { open_flg_dialog_ = &dlg; utils::scope_exit se([this](){ open_flg_dialog_ = nullptr; }); dlg.show(); } How is this any different from cpp { open_flg_dialog_ = &dlg; dlg.show(); open_flg_dialog_ = nullptr; } 20180630 06:12:57<+21WAANAI7> It clears open_flg_dialog_ also if the dialog throws an exception. 20180630 06:13:16<+21WAANAI7> ...ahh 20180630 06:13:28<+21WAANAI7> adds comment 20180630 06:13:52<+21WAANAI7> A comment shouldn't be necessary. 20180630 06:14:06<+21WAANAI7> scope_exit is only used for exception safety. 20180630 06:23:00< irker229> wesnoth: Charles Dang wesnoth:1.14 89cfcd5bbfa6 / src/gui/dialogs/multiplayer/ (faction_select.cpp faction_select.hpp mp_join_game.cpp mp_join_game.hpp): MP Join Game: cleaned up implementation of the recent players-choose-factions ch https://github.com/wesnoth/wesnoth/commit/89cfcd5bbfa6c1b82d44a08d21e2be001abbc670 20180630 06:23:08<+21WAANAI7> much cleaner now 20180630 06:23:34-!- Kawa[m] [kawamatrix@gateway/shell/matrix.org/x-bivxvsgfhgmzmkwf] has quit [Ping timeout: 255 seconds] 20180630 06:23:35< irker229> wesnoth: Charles Dang wesnoth:master fa01fb14d24f / src/gui/dialogs/multiplayer/ (faction_select.cpp faction_select.hpp mp_join_game.cpp mp_join_game.hpp): MP Join Game: cleaned up implementation of the recent players-choose-factions ch https://github.com/wesnoth/wesnoth/commit/fa01fb14d24f9f2830c7411cbabae88fd8a2d228 20180630 06:23:45-!- madmax28 [madmax28ma@gateway/shell/matrix.org/x-zniiichkjmcxwojv] has quit [Ping timeout: 256 seconds] 20180630 06:24:05-!- ChipmunkV[m] [chipmunkvm@gateway/shell/matrix.org/x-oeuxelsigmobnyau] has quit [Ping timeout: 276 seconds] 20180630 06:24:09<+21WAANAI7> gfgtdf ^ 20180630 06:30:24<+21WAANAI7> You could still create a new scoped object on the stack instead of using std::unique_ptr. cpp gui2::dialogs::faction_select flg_dialog(flg, color, side_num): flg_dialog_ = &flg_dialog; 20180630 06:30:47<+21WAANAI7> Simply take the address of the dialog in the stack and store it in a raw pointer. 20180630 06:47:56< irker229> wesnoth: Jyrki Vesterinen wesnoth:master 3a5c2df0a154 / src/gui/dialogs/multiplayer/ (mp_join_game.cpp mp_join_game.hpp): Remove unnecessary heap allocation https://github.com/wesnoth/wesnoth/commit/3a5c2df0a15448c753e1eb19419d4b05b07e475c 20180630 06:49:18< irker229> wesnoth: Jyrki Vesterinen wesnoth:1.14 2c206e31ef63 / src/gui/dialogs/multiplayer/ (mp_join_game.cpp mp_join_game.hpp): Remove unnecessary heap allocation https://github.com/wesnoth/wesnoth/commit/2c206e31ef630aa6557f769d01e616d4d3e63023 20180630 06:49:27<+21WAANAI7> All right, I did it myself. 20180630 06:51:32<+21WAANAI7> i thought it made more logical sense to do it the way i did 20180630 06:51:41<+21WAANAI7> is there some reason not to? 20180630 06:52:15<+21WAANAI7> In general, a common practive is that a stack-scoped object is allocated in the stack. 20180630 06:53:17<+21WAANAI7> Using std::unique_ptr makes it look like the dialog has the same lifetime has the mp_join_game dialog itself. 20180630 06:53:23<+21WAANAI7> *as 20180630 06:53:24<+21WAANAI7> ah 20180630 06:54:48<+21WAANAI7> ok, that makes sense. TBF, gfgtdf had left the dialog creation outside the custom scope because it was used in a retval check. I did away with the retval check (checked on show() instead) and made the dialog object scope-contained. So.... yeah, your method makes more sense. 20180630 06:56:24<+21WAANAI7> (and ftr, iw as AFK, not ignoring you) 20180630 06:56:42<+21WAANAI7> I thought you had gone to bed or something. 20180630 06:57:01<+21WAANAI7> (Didn't check what the time is in Micronesia.) 20180630 06:57:56<+21WAANAI7> It’s almost 6 PM 20180630 07:04:11< irker229> wesnoth/wesnoth:master Jyrki Vesterinen 3a5c2df0a1 Remove unnecessary heap allocation AppVeyor: vs2017/Release Failed 20180630 07:04:12< irker229> Details: https://ci.appveyor.com/project/wesnoth/wesnoth-605wt/build/Wesnoth-VS2017-master-3784 20180630 07:05:44-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20180630 07:08:03< irker229> wesnoth/wesnoth:master gfgtdf a2a4dff050 fix code dublication of mp_join_game::sh AppVeyor: All builds passed 20180630 07:17:14-!- travis-ci [~travis-ci@ec2-54-204-69-80.compute-1.amazonaws.com] has joined #wesnoth-dev 20180630 07:17:15< travis-ci> wesnoth/wesnoth#18755 (master - 3a5c2df : Jyrki Vesterinen): The build was broken. 20180630 07:17:15< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/398520055 20180630 07:17:16-!- travis-ci [~travis-ci@ec2-54-204-69-80.compute-1.amazonaws.com] has left #wesnoth-dev [] 20180630 07:25:40<+21WAANAI7> Ah, yeah, need to readd the forward declaration 20180630 07:28:45-!- travis-ci [~travis-ci@ec2-54-167-147-63.compute-1.amazonaws.com] has joined #wesnoth-dev 20180630 07:28:46< travis-ci> wesnoth/wesnoth#18756 (1.14 - 2c206e3 : Jyrki Vesterinen): The build was broken. 20180630 07:28:46< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/398520255 20180630 07:28:46-!- travis-ci [~travis-ci@ec2-54-167-147-63.compute-1.amazonaws.com] has left #wesnoth-dev [] 20180630 07:33:53< irker229> wesnoth/wesnoth:1.14 Jyrki Vesterinen 2c206e31ef Remove unnecessary heap allocation AppVeyor: vs2017/Release Failed 20180630 07:33:54< irker229> Details: https://ci.appveyor.com/project/wesnoth/wesnoth-605wt/build/Wesnoth-VS2017-1.14-3785 20180630 07:34:54-!- ChipmunkV[m] [chipmunkvm@gateway/shell/matrix.org/x-vfhbcfrunxpxnobu] has joined #wesnoth-dev 20180630 07:59:20< irker229> wesnoth: Jyrki Vesterinen wesnoth:1.14 a82c9258f18b / src/gui/dialogs/multiplayer/mp_join_game.hpp: Fix build https://github.com/wesnoth/wesnoth/commit/a82c9258f18be89a72217d2e54d957195f837253 20180630 07:59:40-!- madmax28 [madmax28ma@gateway/shell/matrix.org/x-tayhdajhcdorumxa] has joined #wesnoth-dev 20180630 07:59:41-!- Kawa[m] [kawamatrix@gateway/shell/matrix.org/x-selblwdxltwfginz] has joined #wesnoth-dev 20180630 08:00:11-!- behalebabo [~behalebab@unaffiliated/behalebabo] has quit [Ping timeout: 276 seconds] 20180630 08:00:21< irker229> wesnoth: Jyrki Vesterinen wesnoth:master d8eada856aa5 / src/gui/dialogs/multiplayer/mp_join_game.hpp: Fix build https://github.com/wesnoth/wesnoth/commit/d8eada856aa5323e451551c86ec9c1ef15337ee0 20180630 08:27:13< irker229> wesnoth: Jyrki Vesterinen wesnoth:opengl 71fd32ffa481 / / (13 files in 5 dirs): Integrate GLEW to the Visual Studio project https://github.com/wesnoth/wesnoth/commit/71fd32ffa481ba3b3fc2934804f7ce6bc9d9bac1 20180630 08:27:15< irker229> wesnoth: Sofartin wesnoth:opengl 9f5eee7dcf51 / projectfiles/Xcode/ (Fix_Xcode_Dependencies Wesnoth.xcodeproj/project.pbxproj): Fixed Xcode Project for OpenGL https://github.com/wesnoth/wesnoth/commit/9f5eee7dcf511126ca72bab4808079bcd5289762 20180630 08:27:17< irker229> wesnoth: Jyrki Vesterinen wesnoth:opengl f3f13c7d7603 / src/ogl/context.cpp: Stop logging GL_VENDOR https://github.com/wesnoth/wesnoth/commit/f3f13c7d7603aca94315d52090e129d3fc4b3e93 20180630 08:27:19< irker229> wesnoth: pentarctagon wesnoth:opengl b128414d3d83 / .travis.yml SConstruct cmake/FindGLEW.make: Updates cmake and scons to be able to compile with OGL. https://github.com/wesnoth/wesnoth/commit/b128414d3d8323baca0840beed79c6e83070179f 20180630 08:27:21< irker229> wesnoth: pentarctagon wesnoth:opengl e65d67f6b494 / SConstruct: Remove forgotten environment dump. https://github.com/wesnoth/wesnoth/commit/e65d67f6b494926fefaaa9416ffefd59e156046a 20180630 08:27:23< irker229> wesnoth: pentarctagon wesnoth:opengl 1e157da2028c / .travis.yml: Re-add travis' notifications. https://github.com/wesnoth/wesnoth/commit/1e157da2028c453b9f7571cb189efa231ad5a7d1 20180630 08:27:25< irker229> wesnoth: pentarctagon wesnoth:opengl f095147d6cee / SConstruct: Adds OpenGL/GLEW checks to scons. https://github.com/wesnoth/wesnoth/commit/f095147d6ceeea568c689db266fdc41b6c793256 20180630 08:27:27< irker229> wesnoth: Sofartin wesnoth:opengl f7c82754905c / projectfiles/Xcode/Wesnoth.xcodeproj/project.pbxproj: Fixed Xcode Project for OpenGL https://github.com/wesnoth/wesnoth/commit/f7c82754905c3fdc9ed6c19c7d6a15437860d5df 20180630 08:27:29< irker229> wesnoth: Jyrki Vesterinen wesnoth:opengl d048316afa34 / / (6 files in 3 dirs): Add a texture class https://github.com/wesnoth/wesnoth/commit/d048316afa344002afe033189f771cb79c7fb98e 20180630 08:27:31< irker229> wesnoth: Jyrki Vesterinen wesnoth:opengl e666011f99d0 / / (7 files in 3 dirs): Add sprite, draw_op and vertex classes https://github.com/wesnoth/wesnoth/commit/e666011f99d0e774db6ed23eb168f2e2fde29e0f 20180630 08:27:33< irker229> wesnoth: Sofartin wesnoth:opengl 6cbde7e3dcc9 / projectfiles/Xcode/Wesnoth.xcodeproj/project.pbxproj: Fix xcode project after aff0465441c62f6932bf19ba42fbedeffc5fbf86 https://github.com/wesnoth/wesnoth/commit/6cbde7e3dcc96d2a941078a406b356af0669fb1f 20180630 08:27:35< irker229> wesnoth: Jyrki Vesterinen wesnoth:opengl d1770d7f892c / / (5 files in 3 dirs): Add a shader class https://github.com/wesnoth/wesnoth/commit/d1770d7f892cfe4d4104f17f35a2462685f15dfd 20180630 08:27:37< irker229> wesnoth: Martin Hrubý (hrubymar10) wesnoth:opengl 0e642c18802c / projectfiles/Xcode/Wesnoth.xcodeproj/project.pbxproj: Fix Xcode project after 3e96a3aa2c357c539c255dbe8b431f6857f8170a https://github.com/wesnoth/wesnoth/commit/0e642c18802cb52e0f6b791d83dbb8fbb9e06f6d 20180630 08:27:39< irker229> wesnoth: Martin Hrubý (hrubymar10) wesnoth:opengl 79dfcb9f4daa / projectfiles/Xcode/Wesnoth.xcodeproj/project.pbxproj: Fix Xcode Project https://github.com/wesnoth/wesnoth/commit/79dfcb9f4daa4c0b6dcddc3745b8e62b2bec3c07 20180630 08:28:00<+21WAANAI7> OpenGL branch rebased. This time automatic rebase worked, there weren't any merge conflicts. 20180630 08:38:26-!- boucman [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20180630 08:38:35-!- travis-ci [~travis-ci@ec2-54-204-69-80.compute-1.amazonaws.com] has joined #wesnoth-dev 20180630 08:38:36< travis-ci> wesnoth/wesnoth#18758 (master - d8eada8 : Jyrki Vesterinen): The build was fixed. 20180630 08:38:36< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/398529842 20180630 08:38:36-!- travis-ci [~travis-ci@ec2-54-204-69-80.compute-1.amazonaws.com] has left #wesnoth-dev [] 20180630 08:42:47< irker229> wesnoth: newfrenchy83 wesnoth:master 882eeb52ab38 / projectfiles/CodeBlocks/ (liblua.cbp wesnoth.cbp wesnothd.cbp): Enable C++17 in Code::Blocks https://github.com/wesnoth/wesnoth/commit/882eeb52ab38547004f2ba7249913323596188d7 20180630 09:38:22-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20180630 09:58:18-!- Oebele_ [~quassel@185-11-201-31.ftth.glasoperator.nl] has joined #wesnoth-dev 20180630 10:04:16-!- louis94 [~~louis94@109.131.34.255] has joined #wesnoth-dev 20180630 10:45:21-!- louis94 [~~louis94@109.131.34.255] has quit [Ping timeout: 264 seconds] 20180630 11:12:44-!- louis94 [~~louis94@109.131.34.255] has joined #wesnoth-dev 20180630 11:29:41-!- Oebele_ [~quassel@185-11-201-31.ftth.glasoperator.nl] has quit [Remote host closed the connection] 20180630 11:31:11-!- fabi [~fabi@wesnoth/developer/fendrin] has quit [Quit: Konversation terminated!] 20180630 11:33:02-!- fabi [~fabi@200116b82b7737005d81802fc8e66148.dip.versatel-1u1.de] has joined #wesnoth-dev 20180630 11:33:03-!- fabi [~fabi@200116b82b7737005d81802fc8e66148.dip.versatel-1u1.de] has quit [Changing host] 20180630 11:33:03-!- fabi [~fabi@wesnoth/developer/fendrin] has joined #wesnoth-dev 20180630 11:43:15-!- irker229 [~irker@uruz.ai0867.net] has quit [Quit: transmission timeout] 20180630 12:04:18-!- irker910 [~irker@109.237.213.40] has joined #wesnoth-dev 20180630 12:04:18< irker910> wesnoth/wesnoth:master Jyrki Vesterinen 3a5c2df0a1 Remove unnecessary heap allocation AppVeyor: 2/4 builds failed 20180630 12:04:18< irker910> Details vs2017/Release: https://ci.appveyor.com/project/wesnoth/wesnoth-605wt/build/Wesnoth-VS2017-master-3784 20180630 12:04:18< irker910> Details vs2015/Release: https://ci.appveyor.com/project/wesnoth/wesnoth-7lnpw/build/Wesnoth-VS2015-master-4070 20180630 12:12:59-!- celticminstrel [~celmin@unaffiliated/celticminstrel] has joined #wesnoth-dev 20180630 12:13:17-!- celmin [~celticmin@unaffiliated/celticminstrel] has joined #wesnoth-dev 20180630 12:33:52< irker910> wesnoth/wesnoth:1.14 Jyrki Vesterinen 2c206e31ef Remove unnecessary heap allocation AppVeyor: 2/4 builds failed 20180630 12:33:53< irker910> Details vs2017/Release: https://ci.appveyor.com/project/wesnoth/wesnoth-605wt/build/Wesnoth-VS2017-1.14-3785 20180630 12:33:54< irker910> Details vs2015/Release: https://ci.appveyor.com/project/wesnoth/wesnoth-7lnpw/build/Wesnoth-VS2015-1.14-4071 20180630 13:15:50-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 256 seconds] 20180630 13:29:26-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20180630 14:01:39-!- behalebabo [~behalebab@unaffiliated/behalebabo] has joined #wesnoth-dev 20180630 14:06:58-!- Appleman1234 [~quassel@121.222.147.211] has quit [Ping timeout: 264 seconds] 20180630 14:09:50< irker910> wesnoth/wesnoth:1.14 Jyrki Vesterinen a82c9258f1 Fix build AppVeyor: All builds passed 20180630 14:34:03-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20180630 14:34:09-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20180630 14:40:35-!- louis94 [~~louis94@109.131.34.255] has quit [Ping timeout: 276 seconds] 20180630 14:55:19-!- louis94 [~~louis94@109.131.34.255] has joined #wesnoth-dev 20180630 15:19:47-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 245 seconds] 20180630 15:34:40-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20180630 16:10:30-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20180630 16:10:36-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20180630 16:18:18< irker910> wesnoth/wesnoth:opengl Martin Hrubý (hrubymar10) 79dfcb9f4d Fix Xcode Project AppVeyor: All builds passed 20180630 16:45:50<+21WAANAI7> I don't think irker is supposed to be getting through to the Discord side, right? 20180630 16:48:34<+21WAANAI7> Maybe loonycyborg configured it to let AppVeyor notifiations through? 20180630 16:49:42< loonycyborg> this applies only to commit missages that are already handled by github discord bot 20180630 16:57:08-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 255 seconds] 20180630 16:58:31-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20180630 17:05:38-!- louis94 [~~louis94@109.131.34.255] has quit [Ping timeout: 276 seconds] 20180630 17:59:04-!- DeFender1031 [~DeFender1@93-173-122-186.bb.netvision.net.il] has joined #wesnoth-dev 20180630 18:22:55-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20180630 18:23:01-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20180630 18:28:38<+21WAANAI7> Is there a way to view commit history for campaigns on wesnoth umc dev prior to them getting added to mainline? The problem I'm running into is that the entire campaign tends to get added all at once, and there also isn't much I can find for some things on the forums or on the wiki's credits page. 20180630 18:30:14-!- gfgtdf [~chatzilla@x4e32b47b.dyn.telefonica.de] has joined #wesnoth-dev 20180630 18:30:54< gfgtdf> @vultraz: why dod you remove the flg_button_callbacl_timer ? and what dod you do to replace it ? 20180630 18:31:47-!- louis94 [~~louis94@109.131.34.255] has joined #wesnoth-dev 20180630 18:32:08<+21WAANAI7> gfgtdf: I removed it because it was overkill, and I set the handled and halt flags to true instead. Those are meant to halt execution on further events on the widget. 20180630 18:32:55< gfgtdf> Vultraz: di you test that it works ? we are executing a probably descruted std::function obejct now ? 20180630 18:33:16-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20180630 18:33:29-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 256 seconds] 20180630 18:34:12<+21WAANAI7> it seemed to work, but it's possible I didn't do the riht tests 20180630 18:34:23<+21WAANAI7> perhaps you could also test to make sure it works 20180630 18:36:14<+21WAANAI7> since you know exactly what was triggering the crash 20180630 18:36:51<+21WAANAI7> also, I observed the faction select dialog doesn't close if you de-assign a side from someone while they're selecting their faction 20180630 18:36:59<+21WAANAI7> rather, it seems their selection applies to their new side? 20180630 18:37:07<+21WAANAI7> which is good 20180630 18:37:13<+21WAANAI7> just not sure how you managed it 20180630 18:38:35< gfgtdf> ok unrelated issue i found whiel testing: i get crashes on the host side it i change the teams, it doent happen everytime but change the team of the first side a few time and it shodul happen eventually 20180630 18:39:25< celmin> I imagine the credits for campaigns are gonna be rather difficult to work out, indeed... 20180630 18:39:47< celmin> @Pentarctagon - If possible I'd suggest starting out by asking the original campaign author. 20180630 18:39:57< celmin> eg E S R in the case of… THoT I think it was? 20180630 18:40:04< celmin> Or beetlenaut for Dead Water. 20180630 18:40:37< celmin> I assume you did check the campaign-specific credits as well? 20180630 18:40:44<+21WAANAI7> yeah 20180630 18:41:08<+21WAANAI7> it helps with some, but also sometimes it just lists a name with nothing about what they specifically did 20180630 18:41:10< celmin> Huh, apparently discord-bot got ghosted. 20180630 18:41:49< celmin> Yeah, that makes sense… sometimes it might be possible to infer which things they might have done? Though that can't be relied on as definite; just a clue. 20180630 18:42:05< celmin> loonycyborg: Maybe restart discord-bit so it gets its nick back? 20180630 18:42:08< celmin> ^bot 20180630 18:43:26<+21WAANAI7> Yeah, sometimes. Generally though, I'm trying to be somewhat conservative about any guessing. 20180630 18:44:09< celmin> I think it's useful to have guesses, as long as you make it clear that they are just guesses… but for the final document it's probably best not to have any guesses. 20180630 18:44:54< gfgtdf> ok i guess it works becasue the event handler executor code internally somehow makes copy of that function object before calling it. 20180630 18:45:16<+21WAANAI7> If I'm not confident, I just put "unknown". 20180630 18:45:29<+21WAANAI7> Likely it just passes the functor by value somewhere. 20180630 18:45:46< celmin> I just mean that if you have guesses for the unknowns it might help to track down the actual creator. 20180630 18:45:49<+21WAANAI7> Worse case is I or someone who knows can look at those specifically again later. 20180630 18:45:53< celmin> Yeah. 20180630 18:45:55< celmin> True. 20180630 18:46:07-!- 21WAANAI7 [~discordbo@baldras.wesnoth.org] has quit [Remote host closed the connection] 20180630 18:46:27-!- discordbot1 [~discordbo@baldras.wesnoth.org] has joined #wesnoth-dev 20180630 18:46:27-!- mode/#wesnoth-dev [+v discordbot1] by ChanServ 20180630 18:46:27<+discordbot1> @Pentarctagon The commit history for campaigns from wesnoth-umc-dev and wescamp is included in mainline in a separate log file in the campaign's dir. 20180630 18:46:29< celmin> Of course "unknown" also means it's GPL, yes? 20180630 18:46:49< celmin> So it's not like you need to locate the creator in order to document the license. 20180630 18:47:17<+discordbot1> The individual commit messages are in full I believe. 20180630 18:47:18< celmin> Well, discordbot1 is better than the internal UUID or whatever that was, at least. 20180630 18:47:24<+discordbot1> hopefully everything possibly unknown is old enough to be GPL by default 20180630 18:47:53<+discordbot1> I'd hate to think that authors for stuff even a year or so old would have already been lost 20180630 18:48:36< celmin> Other than maybe SotA I think pretty much all assets added in the last year or so would have their owner known, either in the commit log or the committer's memory. 20180630 18:49:27-!- louis94 [~~louis94@109.131.34.255] has quit [Quit: Konversation terminated!] 20180630 18:49:40<+discordbot1> That's be my assumption 20180630 18:49:47<+discordbot1> *that'd 20180630 18:49:52<+discordbot1> doesn't std::bind make a copy itself? 20180630 18:50:00< celmin> What Vultraz 20180630 18:50:38< celmin> Anything you pass into std::bind is indeed copied if you don't wrap it in std::ref, though if it's a pointer, obviously it's the pointer that's copied, not whatever it points to. 20180630 18:50:54< celmin> Why are you asking 20180630 18:51:10-!- louis94 [~~louis94@109.131.34.255] has joined #wesnoth-dev 20180630 18:51:27<+discordbot1> What about the bound function itself (the first parameter to std::bind())? 20180630 18:51:39<+discordbot1> it would seem to me the functor must be copied, else you couldn't bind a lambda 20180630 18:51:43<+discordbot1> right? 20180630 18:52:01<+discordbot1> @shadowm You mean the HISTORY file, I'm guessing? 20180630 18:52:04< gfgtdf> yes the function passed to std::bind is coped by std::bind 20180630 18:52:13< gfgtdf> copied* 20180630 18:52:19< celmin> Yeah the functor should be copied, I think. 20180630 18:52:44<+discordbot1> Right. Lambdas are almost always local, and binding to a reference of the lambda right before the lambda is destroyed would be bad. 20180630 18:53:14< celmin> No wait. 20180630 18:53:24< celmin> The functor is taken by r-value reference. 20180630 18:53:28< celmin> As are the arguments. 20180630 18:53:36< celmin> So does that mean they're copied or not? 20180630 18:53:46<+discordbot1> but im also not sure if this is the copying gfgtdf was referring to 20180630 18:54:00< celmin> Maybe that's only to support perfect forwarding though? 20180630 18:54:02<+discordbot1> It's an universal reference, as the functor type is a template parameter. 20180630 18:54:04< gfgtdf> hmm yes moved then, doest really amek differnt here 20180630 18:54:09< celmin> Okay. 20180630 18:54:09< gfgtdf> meant eariler is about the callstack of the event executor, what i'd expect is that the widget somehow holds a list of std::function (here the result of std::bind) that is the event handlers for each event, and if the widget is destroeyed while the function is executed it coudl result in ub since the woudl imply destruction of the function aswell. 20180630 18:54:20<+discordbot1> @Pentarctagon Yes. 20180630 18:54:29< celmin> So then they are copied? 20180630 18:54:30<+discordbot1> alright, thanks. 20180630 18:55:08< gfgtdf> whether it actually crashes would of couse depend on the exact implementation of std::function (or even std::bind which is used to create the std::function). 20180630 18:55:11<+discordbot1> So std::bind() likely moves the functor in if you pass it as an rvalue reference (and obviously only if the functor is of a movable type). 20180630 18:56:11< celmin> std::bind doesn't create a std::function FTR. 20180630 18:57:07< irker910> wesnoth/wesnoth:master newfrenchy83 882eeb52ab Enable C++17 in Code::Blocks AppVeyor: All builds passed 20180630 18:57:47<+discordbot1> tbh im not exactly sure why what happens here works 20180630 18:58:06-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 256 seconds] 20180630 18:59:23-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20180630 19:01:26<+discordbot1> events are stored in signal queues in the dispatcher, which, if you dig far enough down, are implemented using three std::lists. widget inherits from dispatcher, so it'd not be unreasonable for gfgtdf to think the functions would be destroyed along with the widget 🤔 so the widget must not be destroyed yet... especially since events can't be fired from the sdl event loop unless the dispatcher (ie, the widget) exists. 20180630 19:04:05< gfgtdf> ok anyways i tested and at least for me the new method works aswell. But we might be relying on ub somewhere, not sure. 20180630 19:04:42<+discordbot1> I don't think so because I think jyrki deployed this exact behavior in mp create game years ago 20180630 19:05:29<+discordbot1> It's possible for code to rely on UB and still work fine... 20180630 19:05:52<+discordbot1> http://github.com/wesnoth/wesnoth/commit/af2303df778225cb837461cc9943470835d01e1f 20180630 19:06:11<+discordbot1> In any case, what I did in the MP Create Game dialog was blocking any other event handlers for executing for the same event. 20180630 19:06:31<+discordbot1> As far as I can tell, this method is perfectly safe for that purpose. 20180630 19:07:07<+discordbot1> I can't tell if it's what gfgtdf was worried about here, or if he was thinking about some other possibility. 20180630 19:07:09< celmin> (Has Jyrki even been around for "years"?) 20180630 19:07:18<+discordbot1> ~2 20180630 19:07:20<+discordbot1> Yep. Since summer 2016. 20180630 19:07:25< celmin> Oh, wow, okay. 20180630 19:07:36< celmin> Still, "years ago" does kinda imply more than 2. 20180630 19:08:10<+discordbot1> you haven't been around much longer 20180630 19:08:31< celmin> What of it? 20180630 19:08:43<+discordbot1> just noting 20180630 19:09:01< celmin> That also depends on what you mean by "around". 20180630 19:09:12< celmin> In one sense I've been around for years, since 1.10. 20180630 19:09:16<+discordbot1> you both have definitely been invaluable contributors in that time. whatever you want to classify the timespan as 😛 20180630 19:12:12< gfgtdf> yes its the same thing in that commit but in your code you are also destroing (update_options_list->options_tree.clear()) the widget (the element of the treeview node) that owns the std::function object that is currently executing (reset_options_data) 20180630 19:12:30< gfgtdf> so ye i guess it think we can soemhwo assume it has beed shown to be working in the past. 20180630 19:13:53< gfgtdf> this discussion also seems to imply it's valid https://stackoverflow.com/questions/22998364/deleting-a-stdfunction-object-within-itself (at least the picked answer) 20180630 19:18:36<+discordbot1> Hmm, the second answer in that Stack Overflow question says that accidentally using the object after it has destroyed itself would read to random crashes or memory corruption. 20180630 19:18:53<+discordbot1> I can say from personal experience that it causes a very reliable crash in debug builds. 20180630 19:19:01<+discordbot1> could see if ubsan reports anything. 20180630 19:19:13<+discordbot1> someone could check ubsan, yes 20180630 19:19:46<+discordbot1> They tend to use a heap manager implementation that fills memory with a canary value after freeing it, which would mean that any read would return a garbage value, which would almost certainly result in a crash. 20180630 19:21:46-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 256 seconds] 20180630 19:32:17-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20180630 19:32:23-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20180630 19:35:59< celmin> Haha, canary value. 20180630 19:47:37< gfgtdf> does th new luapai have an alias for wesnoth get_side_variable ? 20180630 19:48:50<+discordbot1> get_side_variable? 20180630 19:49:02< gfgtdf> yes 20180630 19:49:09<+discordbot1> ive never heard of that... 20180630 19:49:40<+discordbot1> oh, it's helper.get_side_variable.. 20180630 19:49:44< gfgtdf> it stores a variable in a [side], similar to variables in [unit], it doesnt have an wml interface so it's rareley used. 20180630 19:49:57< gfgtdf> iever heared to helper..get_side_variable 20180630 19:50:10<+discordbot1> ok, then the main wiki list iswrong. 20180630 19:50:29<+discordbot1> anyway 20180630 19:50:41< gfgtdf> yes seems so 20180630 19:51:01< gfgtdf> the link it also dead it seems ? 20180630 19:51:08<+discordbot1> wml.array_access.get("key", side) should work if you want an array 20180630 19:51:30< celmin> gfgtdf: Semi. 20180630 19:51:43< celmin> It's available for arrays but not for scalars. 20180630 19:52:40< celmin> So basically, if you want an array, use what Vultraz said, otherwise use wesnoth.get_side_variable. 20180630 19:52:49< gfgtdf> hmm ye we shodul for scalars probably make it table like side.variables[varname] just like for units, not a high priority though. 20180630 20:04:27-!- louis94 [~~louis94@109.131.34.255] has quit [Ping timeout: 240 seconds] 20180630 20:08:24< celmin> Yeah we should. 20180630 20:08:46< celmin> I'd say it's medium priority. 20180630 20:15:02-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20180630 20:26:30-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 245 seconds] 20180630 20:26:56-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20180630 20:31:50<+discordbot1> high priority is finishing the LuaAPI page 20180630 20:32:13< celmin> Not sure there's anything to add to it ATM. 20180630 20:32:23< celmin> Though it may not be finished per se... 20180630 20:32:40< celmin> Since it doesn't contain or link to everything there is. 20180630 20:37:11-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Read error: Connection reset by peer] 20180630 20:37:32-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20180630 20:43:51< gfgtdf> ok i did more test in the std::function deletion thing and the evend handler executor does not copy the function internally, this is my testign commit https://github.com/gfgtdf/wesnoth/commit/a2299e0a5c6bec12c509aa857b4c51bae17a5e11 and when i test it i ger printed random numbers where it would always print '2' if the function was copied 20180630 20:45:52< gfgtdf> i get things like "side 1886151007" which looks liek a lot like ub (which does not imply that the current wesnoth/wesnoth code is ub, it's possibel that the standard says it's valid.) 20180630 20:46:14<+discordbot1> you're taking a reference.. 20180630 20:47:03<+discordbot1> a reference to a variable that goes out-of-scope after the function that registers the callback exits 20180630 20:47:18<+discordbot1> I would totally expect gibberish 20180630 20:47:24< gfgtdf> no std::bind copies the variables as i don't use std::ref 20180630 20:48:03<+discordbot1> don't you only need std::ref when using non-const references 20180630 20:49:45< gfgtdf> no, it always copies the variable unless you sue std::ref 20180630 20:50:02<+discordbot1> 🤔 20180630 20:50:09< gfgtdf> use* 20180630 20:50:15< celmin> Yeah it does 20180630 20:50:26<+discordbot1> well, do you still get random gibberish if you take the function parameter as a copy? 20180630 20:50:29< celmin> For const-ref you need std::cref if you want it to be a reference. 20180630 20:50:55<+discordbot1> yeah, cref is a thing 20180630 20:51:01<+discordbot1> I think gfgtdf is doing it wrong 20180630 20:51:17< gfgtdf> no i am not this is really simple. 20180630 20:52:39< gfgtdf> this code https://pastebin.com/qDG940Kj is totally valid, run it though ubdetector if you want 20180630 20:53:31<+discordbot1> I see 20180630 20:53:53< gfgtdf> except syntax error of your 20180630 20:54:48-!- louis94 [~~louis94@109.131.34.255] has joined #wesnoth-dev 20180630 20:55:15< gfgtdf> course* 20180630 20:55:45< gfgtdf> version withotu syntax errors https://pastebin.com/YPp4QQPG 20180630 20:56:13<+discordbot1> alright, alright 20180630 20:58:34<+discordbot1> but the code works 20180630 20:58:44<+discordbot1> in join game, that is 20180630 21:03:20-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 256 seconds] 20180630 21:05:28< gfgtdf> yes it works, the same technique was used in create_game to we can somehow assume that it's also tested a bit so we can leave it in i think, it's something to keep in mind though and it's also not 100% clear whather the standard guarantees that it works. 20180630 21:05:43< gfgtdf> i think i'll just add a comment 20180630 21:08:27-!- louis94 [~~louis94@109.131.34.255] has quit [Ping timeout: 240 seconds] 20180630 21:08:32<+discordbot1> also like i said earlier the dialog doesn't close when you get de-assigned a side but maybe that's ok 20180630 21:12:39-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20180630 21:13:57< gfgtdf> hmm ye in fact i am a little unsure how it should behave in that case, i mean if the hosts then gives you another side it does somehow make sense for that dialog to stay open but if not it doesn't. 20180630 21:19:23< Ravana_> I think it makes sense that faction selection is connected to side, so even if player is given another side while choosing, choice is applied to side used to open selection 20180630 21:23:39< gfgtdf> Vultraz: i'm considerng adding some 'faction lock' button on the host side, any oipinion on that and more importantly, do you know which icon could i use ? 20180630 21:24:49< irker910> wesnoth/wesnoth:1.14 joeylmaalouf 22926268cf provide more detail about the Status Tab AppVeyor: All builds passed 20180630 21:35:20<+discordbot1> gfgtdf: faction lock? ie, players can't change it? 20180630 21:35:52< gfgtdf> yes, someone was worried that there migth exist cases where one does not want the player to be abel to choose factions 20180630 21:36:19<+discordbot1> either a standard checkbox or a new padlock icon 20180630 21:37:42-!- louis94 [~~louis94@109.131.34.255] has joined #wesnoth-dev 20180630 21:37:59< gfgtdf> ok i cannot draw so i'll go for the checkbox if i do that. 20180630 21:50:44-!- louis94 [~~louis94@109.131.34.255] has quit [Remote host closed the connection] 20180630 21:51:12-!- louis94 [~~louis94@109.131.34.255] has joined #wesnoth-dev 20180630 22:07:41< gfgtdf> i so hate wml debugging, you get random error messages (like invalid unit type "-1].type") without any ability to debug fast and without any good hint in which line it happens. 20180630 22:09:17<+discordbot1> yeah...well, what can you do :/ 20180630 22:10:52< gfgtdf> port everything to lua... 20180630 22:11:30< gfgtdf> (this is not code i wrote myself but the addon i maintain that's why it wasn't in lua in the first place) 20180630 22:11:43<+discordbot1> F#scriptingplz 20180630 22:11:57<+discordbot1> https://cdn.discordapp.com/attachments/259976436490829825/462742113348747294/faction_select_experiment.JPG 20180630 22:14:02< celmin> I don't think you can call that random. There's no way for the engine to realize you forgot a $ or whatever. 20180630 22:14:15< celmin> Oh, I guess actually the issue there is you forgot a $() 20180630 22:14:51< celmin> Would've been better if the people who designed the WML variable system had made it 1-indexed so you didn't have to do that, but it's far too late to do anything about that now. 20180630 22:15:08<+discordbot1> grid listbox has no way to fix columns 20180630 22:15:09<+discordbot1> dammit 20180630 22:15:19< celmin> Yes it does 20180630 22:15:32<+discordbot1> eh? 20180630 22:15:47< celmin> (And no-one could've predicted that Wesnoth would eventually start using Lua.) 20180630 22:15:56<+discordbot1> fix columns as in, always use n columns 20180630 22:16:01< celmin> IIRC you can fix the columns by using a linked group for the cells? 20180630 22:16:05< celmin> Oh, hmm. 20180630 22:16:13<+discordbot1> it could be added... 20180630 22:16:14< gfgtdf> i didn't change that code at all to be it must be correct somehow , it's just some variables that contains the wrong stuff which breaks the variable substituion somehere else. 20180630 22:16:26< celmin> It might be addable. 20180630 22:16:27<+discordbot1> bit of a pain in the ass 20180630 22:16:53< celmin> Wait, I don 20180630 22:16:58< celmin> 't think you'd actually want that? 20180630 22:17:07< celmin> You'd want the number of columns to adjust to fit the window, wouldn't you? 20180630 22:17:22<+discordbot1> what? 20180630 22:17:36< celmin> Is there a problem in your screenshot BTW? 20180630 22:17:44<+discordbot1> yes 20180630 22:17:47< celmin> Elaborate 20180630 22:18:06<+discordbot1> number of grid columns changes based on faction due to differing number of leaders 20180630 22:18:12< celmin> Ah. 20180630 22:18:18< celmin> Try a size lock 20180630 22:18:33< celmin> I guess it's technically a workaround but it should work, I think 20180630 22:23:48<+discordbot1> yeah, just not working 20180630 22:23:56<+discordbot1> the algorithm you wrote doesn't allow for it 20180630 22:24:02< celmin> Eh? 20180630 22:24:10< celmin> Doesn't allow for what? 20180630 22:24:16<+discordbot1> it always tries to square the layout 20180630 22:24:21<+discordbot1> not fill the available space 20180630 22:24:37< celmin> But if the available space is insufficient to square the layout... 20180630 22:25:00<+discordbot1> 20180701 09:22:58 error gui/general: vertical_scrollbar [_vertical_scrollbar] gui2::scrollbar_base::recalculate: Can't recalculate size, force a window layout phase. 20180630 22:25:09< celmin> ? 20180630 22:25:37< celmin> Does it look like it would be easy to add like, max_columns or something to the grid_listbox? 20180630 22:25:49<+discordbot1> i suppose 20180630 22:25:56<+discordbot1> but it would need to be a part of listbox 20180630 22:25:57< celmin> IIRC the grid listbox did still have a few problems (like navigation not working). 20180630 22:26:01< celmin> Huh? 20180630 22:26:07<+discordbot1> since for some damn reason we decided to stuff 3 widgets into 1 20180630 22:26:17< celmin> Oh. 20180630 22:26:32< celmin> But it wouldn't need to be accepted in the vertical and horizontal listboxes at the WML level. 20180630 22:26:58< celmin> Because the WML is defined by the definition class IIRC, not the widget class. Or maybe it's the builder class. 20180630 22:27:07<+discordbot1> yes 20180630 22:28:15<+discordbot1> actually, for this, i think id like to a horizontally scrolling two-row list 20180630 22:28:23<+discordbot1> but that's even harder 20180630 22:28:32< celmin> IIRC the specific listbox behaviour isn't in the widget class though, it's in that insane template class. 20180630 22:28:53< celmin> If you can add max_columns to grid_listbox I presume you could add max_rows. 20180630 22:29:01<+discordbot1> layout engine completely craps itself if the vertical scrollbar is disabled 20180630 22:29:26< celmin> Though it may not look that good, because it'd first try to stretch the window to get it to fit, and only then add the scrollbar. 20180630 22:32:09<+discordbot1> yeah, honestly, i don't really feel motivated to do all the patching necessary to get this working 20180630 22:37:16-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 256 seconds] 20180630 22:38:11-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20180630 22:38:12< irker910> wesnoth: gfgtdf wesnoth:1.14 459fd5f8e906 / src/gui/dialogs/multiplayer/mp_join_game.cpp: add a comment https://github.com/wesnoth/wesnoth/commit/459fd5f8e906f458ff22bb9e10f203d7394b5222 20180630 22:45:51<+discordbot1> Ok, irker isn’t getting blocked 20180630 22:50:33< gfgtdf> ftr i also get the ub in this updates patch https://github.com/gfgtdf/wesnoth/commit/6a449709903f776d4ca00fb83a308606c84a0b6c which does not use conse references in the function. 20180630 22:55:47-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 255 seconds] 20180630 22:56:19<+discordbot1> Well that’s weird 20180630 22:56:22<+discordbot1> That shouldn’t happen 20180630 22:56:59<+discordbot1> It still prints gibberish? 20180630 22:57:57< gfgtdf> yes 20180630 22:58:35<+discordbot1> Really that shouldn’t happen 20180630 22:58:35< gfgtdf> as said the comment the st::function object whiel fodls those captured variables is deleted so it's basicially acceccin freed memory 20180630 22:58:51< gfgtdf> s/whiel fodls/which holds 20180630 22:59:36<+discordbot1> I should see if I can make it so nodes aren’t deleted 20180630 22:59:53< celmin> ? 20180630 23:14:26-!- gfgtdf [~chatzilla@x4e32b47b.dyn.telefonica.de] has quit [Read error: Connection reset by peer] 20180630 23:17:23-!- louis94 [~~louis94@109.131.34.255] has quit [Ping timeout: 256 seconds] 20180630 23:19:54<+discordbot1> I only deleted nodes because I couldn't move them at the time 20180630 23:30:35< loonycyborg> this irker is identified by ip 20180630 23:30:45< loonycyborg> mask in bot no longer matches 20180630 23:31:09-!- stikonas_ is now known as stikonas 20180630 23:32:24< loonycyborg> AI0867: ShikadiQueen: any idea why it's irker910!~irker@109.237.213.40 now? 20180630 23:32:33< loonycyborg> maybe reverse dns no longer works? 20180630 23:35:12-!- Appleman1234 [~quassel@121.222.147.211] has joined #wesnoth-dev --- Log closed Sun Jul 01 00:00:54 2018