--- Log opened Tue Sep 20 00:00:52 2016 20160920 00:02:18-!- esr [~esr@wesnoth/developer/esr] has joined #wesnoth-dev 20160920 00:05:51-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 00:06:54< irker644> wesnoth: Celtic Minstrel wesnoth:master 6b9ed2e3d411 / projectfiles/Xcode/Wesnoth.xcodeproj/project.pbxproj: Update XCode project https://github.com/wesnoth/wesnoth/commit/6b9ed2e3d411fc203ea9cd345d9a0011cfe09683 20160920 00:07:17< celticminstrel> So uhh... the new MP staging doesn't work in the slightest. 20160920 00:07:27< celticminstrel> Except that if you click "I'm Ready" it does start a game. 20160920 00:08:49< tad__> celticminstrel: check the irc log? I think vultraz was going on about that some hours ago 20160920 00:11:41< celticminstrel> Turns out it's my resolution. If I increase to 1280x960, it works. 20160920 00:12:19< celticminstrel> Looks okay but has "image not found" for the leaders... 20160920 00:15:35-!- tad__ [add94167@gateway/web/freenode/ip.173.217.65.103] has quit [Quit: Page closed] 20160920 00:18:38< celticminstrel> I think I'm basically finished with the menus refactor (finally). 20160920 00:18:52-!- tad_ [add94167@gateway/web/freenode/ip.173.217.65.103] has joined #wesnoth-dev 20160920 00:19:12< celticminstrel> Just need to test the unit facing menu and the in-game menus... 20160920 00:19:16< celticminstrel> Especially WML menuitems. 20160920 00:19:44< celticminstrel> Actually, I really need a good way to test those... 20160920 00:20:04< celticminstrel> Maybe I should just copy over the test scenario I was using earlier. 20160920 00:20:28< gfgtdf> celticminstrel: i think vultraz said it only work for local mp games currnelt.y 20160920 00:20:45< celticminstrel> gfgtdf: And, apparently, only on high resolutions. 20160920 00:21:09< gfgtdf> celticminstrel: hmm doesnt rally suprise me 20160920 00:21:57 * celticminstrel will leave updating the MSVC project to Jyrki or wedge. 20160920 00:22:28< tad_> PR 793 is my fix for a minor error in debug/kill which causes [have_unit] to misbehave when testing .. seems to fix the issue. 20160920 00:23:01< celticminstrel> Hmm, builds are passing according to Github. I guess he didn't break anything. 20160920 00:23:11-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20160920 00:23:37< irker644> wesnoth: Gregory A Lundberg wesnoth:master c66325856b73 / src/synced_commands.cpp: Fix bug: Debug|Kill [have_unit] error https://github.com/wesnoth/wesnoth/commit/c66325856b73d2d610d44377c187ddbadda2978d 20160920 00:23:39< irker644> wesnoth: Celtic Minstrel wesnoth:master f096a22e2e71 / src/synced_commands.cpp: Merge pull request #793 from GregoryLundberg/GL_debug_kill https://github.com/wesnoth/wesnoth/commit/f096a22e2e716ab0b55f2e0b600bb628955428e1 20160920 00:24:02< tad_> ty 20160920 00:25:28< celticminstrel> So there's still a crash when placing a unit in the editor. :/ 20160920 00:25:33< celticminstrel> I thought that had been fixed. 20160920 00:26:03-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160920 00:26:50< celticminstrel> Guess I can't test the unit facing menu, then. 20160920 00:27:14< celticminstrel> Unless I fix the bug at the same time. :/ 20160920 00:27:50< celticminstrel> I can see exactly why the crash happens, but I'm not sure how simple it is to fix it. 20160920 00:29:00-!- ToBeCloud [uid51591@wikimedia/ToBeFree] has joined #wesnoth-dev 20160920 00:33:38< celticminstrel> Bleh. I thought I was almost done, but apparently the in-game menus are also totally broken. :/ 20160920 00:34:27< celticminstrel> I guess I'll just take a break for awhile and eat something and maybe do other stuff. 20160920 00:44:28-!- Appleman1234 [~Appleman1@KD119104047049.au-net.ne.jp] has joined #wesnoth-dev 20160920 00:45:28< bumbadadabum> celticminstrel: low-res support for the new UI should be there more 20160920 00:45:49< bumbadadabum> my knowledge is fairly limited about the new UI things 20160920 00:45:53< bumbadadabum> but I can try to help 20160920 00:48:01-!- celmin [~celticmin@unaffiliated/celticminstrel] has joined #wesnoth-dev 20160920 00:49:31< celmin> We fixed the aspect warning that TSG2 triggered, right? 20160920 00:49:34< celmin> tad_: ^ 20160920 00:51:50< mattsc> Yay! 20160920 00:51:59 * mattsc got the tunnel thing figured out. 20160920 00:52:24< mattsc> Proof-of-concept only, so far, but that’s most of the battle. 20160920 00:53:08< celmin> Or mattsc: ^ 20160920 00:53:10< tad_> celmin: I beleive so. I recall you worked on one part of it, questioned the other, but your fix seemed to make both go away. 20160920 00:53:27< celmin> 'kay, removing it from TODO then 20160920 00:55:08< tad_> celmin: sounds good. I closed my issue on it some time ago 20160920 00:58:51< celmin> "GUI2 dialogs for random map generation" 20160920 00:59:00< celmin> I feel like vultraz already did that. 20160920 01:00:57< tad_> might ask gfgtdf 20160920 01:01:00-!- fabi [~fabi@176.7.87.14] has quit [Remote host closed the connection] 20160920 01:03:48< tad_> I don't think he worked on the GUI2 part but he was doing some worth on the cave generator. 20160920 01:03:57< tad_> s/worth/work/ 20160920 01:04:51< celmin> That TODO item might've been left because I want to add a way for Lua generators to offer user-configurable settings... 20160920 01:07:46< tad_> he (gfgtdf) passed me a comment about doing a Lua generator I have in my issues. May be a while before I get to it, though. 20160920 01:08:16< celmin> Eh? 20160920 01:08:21-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 01:09:23< tad_> "It'd be nice if this map generation code would be ported to Lua, there is already a half-working port of the cavegen.cpp file to lua" 20160920 01:09:34< tad_> Looks like he decided to do it himself 20160920 01:11:43-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20160920 01:12:33-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 240 seconds] 20160920 01:12:44-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160920 01:15:41-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Client Quit] 20160920 01:16:39-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160920 01:20:34-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Client Quit] 20160920 01:20:49< celmin> I think the way Lua generators are called by the engine should be changed fairly drastically. 20160920 01:20:57< shadowm> 20160919 22:20:14 debug gui/dialogs/file_dialog: register_new_selection(): new selection '\' is a directory: C:\users\shadowm\My Documents\My Games\Wesnoth1.13\editor 20160920 01:21:19< shadowm> Okay, so fs::normalize_path("\") apparently gives me nonsense back? 20160920 01:22:46< shadowm> Hmm... 20160920 01:22:53< shadowm> Well, that gives me Z:\. 20160920 01:22:54-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160920 01:23:43< shadowm> Hang on, okay, the problem is that fs::is_relative("\\") yields _true_. 20160920 01:23:58< shadowm> boost::filesystem::path{"\\"}.is_relative() == true 20160920 01:24:40-!- gfgtdf_ [~chatzilla@x50ab6c61.dyn.telefonica.de] has joined #wesnoth-dev 20160920 01:26:04< shadowm> SIGH. 20160920 01:26:19< shadowm> Yes, it probably makes sense. 20160920 01:26:43< shadowm> It is relative to the current working directory in that the drive whose root is being referenced is the same drive that has the current working directory. 20160920 01:26:50-!- gfgtdf [~chatzilla@x4e368db9.dyn.telefonica.de] has quit [Ping timeout: 260 seconds] 20160920 01:26:58< matthiaskrgr> lol :( 20160920 01:27:04-!- gfgtdf_ is now known as gfgtdf 20160920 01:27:19< shadowm> Now in order to solve this conundrum I'll gave to give the file dialog special knowledge about Windows, probably. 20160920 01:27:56-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20160920 01:27:59< shadowm> Or I can just make a special case for fs::is_relative(name) && fs::is_root(name). 20160920 01:28:26< shadowm> In theory that shouldn't ever happen on POSIX. 20160920 01:31:55< shadowm> ... Yes, that solves it. 20160920 01:32:17< shadowm> Except I need to reference the drive the file browser is looking at, not the CWD's drive. 20160920 01:34:05< shadowm> At this point I feel like I should've used boost::filesystem directly instead of stuffing our filesystem ns with leaky abstractions. 20160920 01:34:52< tad_> Too late to correct that? 20160920 01:35:45< shadowm> I can't be bothered to correct that at this point. 20160920 01:36:01< shadowm> It'd also set an awkward precedent for other code. 20160920 01:36:33< shadowm> Next thing I know is that everyone and their dog will have their own custom version of normalize_path() in unnamed namespaces across 1,700 files. 20160920 01:36:37-!- can-ned_food [~me@dynamic-acs-24-154-138-63.zoominternet.net] has joined #wesnoth-dev 20160920 01:39:00< can-ned_food> so, it should be possible to have a query for the number of casualties at that moment in the scenario. that way you can conditionally inform choices in dialogue or even branch the campaign. 20160920 01:39:44< celmin> You could easily implement it by tracking them separately using die events and a WML variable. 20160920 01:40:10< can-ned_food> yes, but a little on the tedious side 20160920 01:40:21< celmin> Probably more flexible though. 20160920 01:41:01< can-ned_food> you mean choose which types to track, e.g. for a rescue mission 20160920 01:41:18< celmin> Something like that. 20160920 01:41:37-!- tad_ [add94167@gateway/web/freenode/ip.173.217.65.103] has quit [Quit: Page closed] 20160920 01:45:02-!- tad_ [add94167@gateway/web/freenode/ip.173.217.65.103] has joined #wesnoth-dev 20160920 01:46:57< irker644> wesnoth: mattsc wesnoth:fix-tunnel-issues f13123648eea / src/ (actions/move.cpp pathfind/teleport.cpp): Tunnels: fix issues when exit hex is occupied by invisible unit https://github.com/wesnoth/wesnoth/commit/f13123648eea920ac18f3a955a58ae7c0e5d2e5a 20160920 01:49:42< irker644> wesnoth: mattsc wesnoth:fix-tunnel-issues aae3b6713261 / src/pathfind/teleport.cpp: Fix indenting https://github.com/wesnoth/wesnoth/commit/aae3b6713261715b6a4672e4487b693b17ff2ea8 20160920 01:50:02< shadowm> I somehow have 1.5 times the code the GUI1 filechooser has. 20160920 01:50:05< gfgtdf> tad_: yes, i did the lua mapgen thing myself. 20160920 01:50:34< shadowm> Oh wait, I guess the GUI1 filechooser has half of its implementation done in a widget class. 20160920 01:50:44< shadowm> In that case I have less than half the code the GUI1 filechooser has. 20160920 01:51:08< tad_> gfgtdf: OK. So should I close the request in my Issues? 20160920 01:51:24< gfgtdf> tad_: hmm yes 20160920 01:51:41< mattsc> celmin, gfgtdf, tad_, zookeeper, DeFender1031, vultraz, forgot who else has previously commented: ^ those two commits are the last of my tasks on tunnels, as far as I know. 20160920 01:51:42< gfgtdf> tad_: is that a list on just on your mind or somehere in the net ? 20160920 01:51:51< celmin> gfgtdf: Want to fix the crash when placing a unit in the editor? 20160920 01:51:54< mattsc> They’re in PR #790. 20160920 01:52:06< celmin> It involves refactoring unit::ability_active to take a display_context parameter. 20160920 01:52:15< mattsc> Let me know if you have comments, or if you’re planning to look at them sometime later. 20160920 01:52:30< gfgtdf> celmin: i thought that was already fixed ? 7573678201483dbfd19a1950c0edfec4487dc19e 20160920 01:52:45< shadowm> Note to self: sort fileview in a Windows-friendly fashion. 20160920 01:52:58< shadowm> Oh for the love of 20160920 01:53:22< shadowm> Turns out the issue with folders that aren't really folders isn't specific to Wine. 20160920 01:53:34< celmin> gfgtdf: I thought so too, but I got the crash again today in a different place. 20160920 01:54:10< gfgtdf> celmin: hmm i currently don't plan to deal with that. 20160920 01:54:48< shadowm> 20160919 22:53:57 debug gui/dialogs/file_dialog: register_new_selection(): new selection 'src' does not exist or is not accessible, but parent exists 20160920 01:54:59< shadowm> It's an NTFS mount point. 20160920 01:55:05< gfgtdf> celmin: actually i dont that that much point in thixin that unless we fix the other issues with the scenario editor too minaly the 'underlying_id' and [time_area]s generated by the editor. 20160920 01:55:36< gfgtdf> mainly* 20160920 01:57:10< shadowm> I hate this crap. 20160920 01:58:01< shadowm> fs::normalize_path("C:\\src", true, true) fails. 20160920 01:58:28< shadowm> Which means that boost::filesystem::canonical() probably doesn't know how to deal with NTFS mount points. 20160920 01:58:54< shadowm> BAH. 20160920 01:59:18< shadowm> I'll just ignore all bugs that have something to do with BFS missing half its brain. 20160920 01:59:59< shadowm> Hopefully there won't any weird issues involving the localized junction points in people's profiles. 20160920 02:00:54< shadowm> Why do we use BFS, again? 20160920 02:01:02< shadowm> gfgtdf you know the answer to this. 20160920 02:01:10< gfgtdf> shadowm: i wonder why you have to deal this those thing when porting the dialog to gui2, can'T cyou just copy the fs code from the gui2 version? 20160920 02:01:45< shadowm> No, I can't copy the code from the GUI2 version to the GUI2 version. 20160920 02:02:07< gfgtdf> from the gui1 version meant ofc. 20160920 02:02:09< shadowm> No, I don't want to reuse the code from the GUI1 version because it already had issues of its own. 20160920 02:02:19< gfgtdf> hmm we hadissues with utf8 on windows before. maybe there are other reasons that i dont remember rogth now 20160920 02:02:21< shadowm> It also hand-parsed most things. 20160920 02:02:49< gfgtdf> with non-ascii path i meant. 20160920 02:03:05< shadowm> The whole point of having a filesystem API is that modules like the GUI2 file dialog shouldn't have to reinvent the wheel. 20160920 02:03:06< celmin> gfgtdf: Do you know whether a unit object is required for rendering? 20160920 02:03:23< tad_> I think I checked canonical when you were last in talking like this and it does know NTFS. But don't you mean "C:\\\\src"? 20160920 02:03:40< shadowm> tad_: ... No. 20160920 02:03:50 * tad_ shrugs. 20160920 02:04:07< shadowm> You write C:\src. You escape it as C:\\src if you aren't using a raw string literal. 20160920 02:04:51< shadowm> The raw string literal version of that call would be fs::normalize_path(r"(C:\src)", true, true). 20160920 02:05:00< tad_> ok 20160920 02:05:04< shadowm> R 20160920 02:05:07< shadowm> Not r. 20160920 02:05:34< shadowm> I'm not interested in C:\\src, and no, the issue here is that C:\src is not a folder, it's an NTFS mount point. 20160920 02:05:42< gfgtdf> celmin: not sure, i think move_unit_fake creates a unit internalyl use mpost likeley it is needed at lest for some actions. 20160920 02:05:48< shadowm> Mount points, like junction points, are not folders. 20160920 02:06:19< shadowm> Normally no-one should care about this, but apparently BFS does and doesn't deal with it correctly. 20160920 02:06:26< tad_> gfgtdf: It believe it does. Almost positive I saw it did. 20160920 02:07:19< shadowm> It has NTFS in the name because it's an NTFS-specific object type. The fact that either the containing filesystem or the mount target filesystem use NTFS is irrelevant. 20160920 02:08:24< shadowm> ... I guess I lost UNC support during my refactor. 20160920 02:08:38< shadowm> That's weird. 20160920 02:09:01< tad_> shadowm: only issue I see about NTFS mounts is create_directory fails 20160920 02:11:05< shadowm> Did I have UNC support before the refactor, actually? I can't remember. 20160920 02:11:22-!- tad_ [add94167@gateway/web/freenode/ip.173.217.65.103] has quit [Quit: Page closed] 20160920 02:11:32< celmin> BTW mattsc, did you test with silver mages as well? 20160920 02:11:37< shadowm> Really doesn't matter seeing as how almost everything else decides to commit suicide when spotting a UNC. 20160920 02:16:46< shadowm> At this point I can only assume Windows is antagonizing me on purpose: https://dl.dropboxusercontent.com/u/21371130/screenshots/23910394.png 20160920 02:17:20< shadowm> It's my own process. What do you mean, "access denied"? 20160920 02:17:55< mattsc> celmin: silver mages have the tunnel filter set to “no units on exit hex”, so it should not be an ussue. 20160920 02:18:04< gfgtdf> shadowm: maybe you have a debugger attachd or slimilar? 20160920 02:18:04< mattsc> But I will add that to my list of tests I still want to do. 20160920 02:18:12< celmin> 'kay 20160920 02:18:14< shadowm> And why did this happen only because Wesnoth decided to get stuck forever on "reading caches"? 20160920 02:18:26< shadowm> gfgtdf: Trust me I would know if that was the case. 20160920 02:18:42< mattsc> There are a few more things I want to do just to be certain that everything works, but it’s mostly just because I am pedantic ... 20160920 02:18:59< shadowm> Well, now Process Explorer is getting stuck on startup. 20160920 02:19:11< shadowm> I think Windows just decided to take a dump. 20160920 02:19:19< celmin> I've occasionally had ghost processes that I can't terminate... 20160920 02:19:44 * shadowm forcefully reboots the VM. 20160920 02:21:15< shadowm> I lost the ability to use \??\ or the pseudo-UNC versions after refactoring, too. 20160920 02:21:20< shadowm> Meh. 20160920 02:22:03< shadowm> Probably BFS' fault as well. But, who cares. 20160920 02:22:12< shadowm> Not a stupid fantasy game, certainly. 20160920 02:23:34< celmin> My impression is that some of these things should probably be reported to BFS as bugs. 20160920 02:23:48< shadowm> Probably. 20160920 02:24:28< shadowm> But doing that would require me to continue to bear Windows' stupidity for far longer than I'd prefer. 20160920 02:25:12< celmin> Wasn't BFS proposed for inclusion in the C++ standard? 20160920 02:25:23< shadowm> ARGH. 20160920 02:25:53< shadowm> Going back to Linux, apparently /// and // mean completely different things to my code or BFS, not sure which. 20160920 02:26:42< shadowm> While ///, ////, and so on are considered equivalent to /, // is not. 20160920 02:26:45< celmin> I wonder if anything still uses the Mac path syntax. 20160920 02:26:47< shadowm> 20160919 23:26:39 debug gui/dialogs/file_dialog: register_new_selection(): new selection '//' seems relative 20160920 02:26:53< shadowm> NO it's not relative dafadsfgfa 20160920 02:27:20-!- TC02 [~quassel@venus.arosser.com] has joined #wesnoth-dev 20160920 02:28:09< shadowm> This is that weird root_name() case from http://www.boost.org/doc/libs/1_49_0/libs/filesystem/v3/doc/reference.html#Path-decomposition-table . 20160920 02:28:18< shadowm> Why on earth is // meaningful to BFS on POSIX? 20160920 02:28:58< shadowm> I feel like this documentation ought to cite its references. 20160920 02:29:45< mattsc> celmin: oh, besides, a village with a unit from another side on it cannot be owned by the current team’s side, so it is not an option for a silver mage’s teleportation target 20160920 02:29:46< shadowm> Oh thanks Google for being useless. 20160920 02:29:58< shadowm> Google doesn't consider // a meaningful keyword. 20160920 02:30:16< celmin> shadowm: Quoting it doesn't work? 20160920 02:30:36< shadowm> Nope. 20160920 02:31:14< shadowm> POSIX says: 20160920 02:31:15< shadowm> "A pathname that begins with two successive slashes may be interpreted in an implementation-defined manner, although more than two leading slashes shall be treated as a single slash." 20160920 02:31:35< shadowm> This is just great. 20160920 02:31:38< celmin> Reading that page, I'm wondering why BFS can't abstract away the extended-path prefixes. 20160920 02:32:02< celmin> It should add it automatically if it detects that the path has grown too long. 20160920 02:33:23< celmin> Also, why is //net not decomposable? 20160920 02:34:16< celmin> Why does generic_string() preserve the redundant slashes? 20160920 02:35:43< celmin> …apparently 'ls //net' yields nothing whatsoever. o.o 20160920 02:35:49< celmin> What does this mean... 20160920 02:38:33< can-ned_food> you mean Mac paths with the colon delimiters, celmin? 20160920 02:38:46< celmin> Yes. 20160920 02:39:21< celmin> I seem to recall Finale still using them as of 2011. 20160920 02:41:20-!- gfgtdf [~chatzilla@x50ab6c61.dyn.telefonica.de] has quit [Quit: ChatZilla 0.9.92 [Firefox 48.0.2/20160823121617]] 20160920 02:43:10-!- tad_ [add94167@gateway/web/freenode/ip.173.217.65.103] has joined #wesnoth-dev 20160920 02:45:01< mattsc> celmin: I did not add those spaces, see e.g the 1.12.6 code: https://github.com/wesnoth/wesnoth/blob/1.12.6/src/actions/move.cpp#L263 20160920 02:45:01< shadowm> celmin: "Also, why is //net not decomposable?" -- Because of the POSIX passage I just quoted. 20160920 02:45:24< celmin> Oh hey, somehow I missed that. 20160920 02:45:27< mattsc> But I can remove them, I don’t care. Same with the empty lines in the if() statement. 20160920 02:45:46< mattsc> I’m just generally replicating or keeping what others have done before me. 20160920 02:45:54< celmin> mattsc: Are you responding to the comment I deleted? 20160920 02:46:15< shadowm> The danger with abstracting away the extended-path prefixes is that some things would have unexpected meanings at times. 20160920 02:46:15< mattsc> You deleted it? Possibly. I saw it in an email from github. 20160920 02:46:21< celmin> (I deleted it because I realized you had just removed comment symbols from the existing line.) 20160920 02:46:32< celmin> shadowm: How so? 20160920 02:46:48< mattsc> Ah, yes, it’s gone. 20160920 02:47:22< mattsc> As for the empty lines in the if block, just tell me. I have no personal opinion on that. 20160920 02:47:42< shadowm> For example, is "GLOBALROOT\REGISTRY" a reference to "\GLOBALROOT\REGISTRY" in the filesystem namespace, or to "\REGISTRY" in the NT object namespace? 20160920 02:48:17< shadowm> If it has \\?\ added at the start, it's the last one. 20160920 02:48:41< celmin> With the if block, you're writing "if ( xxx )" in imitation of the surrounding code (and there's something to be said for keeping style consistent within a file), whereas I would prefer "if(xxx)', 20160920 02:49:13< celmin> shadowm: Wait, can you even specify relative paths using the extended-path prefix? 20160920 02:50:44< shadowm> It doesn't seem to me like BFS knows whether a path is relative or not until you ask. 20160920 02:50:52< mattsc> celmin: Oh, I see, I misunderstood. Yes, I had “if (xxx)” first and then noticed that the surrpunding code does it differently, so I changed it. 20160920 02:51:11< shadowm> Maybe I'm wrong, but I'm under the impression it takes a very lazy approach to some things. 20160920 02:51:13< mattsc> Again, I don’t care. 20160920 02:51:27< shadowm> Furthermore, at least . works with \\?\ and co. 20160920 02:51:59< shadowm> (At the platform level, I mean, not BFS.) 20160920 02:53:06< tad_> shadowm: You're not wrong. They specifically say they take the most-common form and don't handle many platform-specific stuff .. or that's how I read the FAQ about BFS 20160920 02:53:29< shadowm> So yeah. // means something in POSIX. 20160920 02:53:44< shadowm> I guess that's an intentional provision for vendor-specific extensions to path parsing. 20160920 02:54:24< shadowm> Seems Linux doesn't do anything special with it (not that BFS cares). 20160920 02:54:53< tad_> 'not that BFS cares' is the operative phrase, I think. 20160920 02:55:11< celmin> ls on my system seems to treat "net" as a magic name somehow. 20160920 02:55:23< celmin> 'ls //net' and 'ls /net' both produce no output. 20160920 02:55:37< celmin> But if I replace net with foo, it says no such file or directory. 20160920 02:55:38< shadowm> It's annoying because it still goes the extra mile and brute-forces path name canonicalization, so why not realize that // is unused on Linux too? 20160920 02:58:22< can-ned_food> looks like Debian doesn't interpret '//' specially, if you didn't already know that 20160920 03:00:08< shadowm> Yeah, as I said above Linux doesn't do anything special with it. 20160920 03:00:11< can-ned_food> see, i disagree with many of POSIX's recommendations. why make a special case for a doubling of the delimiter, even if it is at the base of the path? i can imagine an accidental '//example' occuring in some expansion or symbolic reference somewhere. 20160920 03:00:34< shadowm> Now, if you say Debian I'd have to ask you whether you mean the Linux-based version, or the FreeBSD-based version. :p 20160920 03:00:35< can-ned_food> oh, is Minstrel on OSX? 20160920 03:00:52< shadowm> Because this stuff is ultimately dictated by the kernel. 20160920 03:00:55< can-ned_food> oh yeah, Linux. sorry. 20160920 03:01:22< tad_> So I'm reading some Boost Filesystem docs and I see stuff like "unreliable" and "junk left over from the last program run" especially (or specifically) when talking about Windows. 20160920 03:01:31< shadowm> If OS X does assign a meaning to // I suspect there's a good chance FreeBSD does as well. 20160920 03:02:16< shadowm> *some BSD variants 20160920 03:04:30< shadowm> Yes, Windows has some annoying semantics for the current directory concept in general, inherited from DOS. 20160920 03:05:16< celmin> can-ned_food: Huh? 20160920 03:05:18< can-ned_food> everyone knows that MSDOS was summoned straight from the nethermost depths of hell. 20160920 03:05:22< tad_> Which came from CP/M which was sorta like, but different from, SysV 20160920 03:05:24< celmin> You didn'y know? 20160920 03:05:24< shadowm> IIRC one particular corollary is that X:foo\bar may not necessarily equal X:\foo\bar. 20160920 03:05:43< can-ned_food> i wasn't certain, celmin. 20160920 03:06:02< celmin> shadowm: I thought X:foo\bar was relative to the drive's current directory. 20160920 03:06:13< can-ned_food> i know you use it, but didn't know if you were on it currently 20160920 03:06:15< celmin> While X:\foo\bar was relative to its root. 20160920 03:06:17< shadowm> That's what I mean yes. 20160920 03:06:23< celmin> can-ned_food: I don't IRC from Windows generally. 20160920 03:06:56< shadowm> To a casual onlooker (say, users) the difference is far from evident, though. 20160920 03:07:17< can-ned_food> did MSDOS maintain a CWD for each driveletter? i can't remember 20160920 03:07:23< celmin> At least Windows pathnames probably aren't quite as bad as Mac Classic ones. 20160920 03:07:27< tad_> can-ned_food: yes 20160920 03:07:42< celmin> IIRC correctly, ../../../foo becomes ::::::foo 20160920 03:07:52< celmin> Gah, I said correctly twice 20160920 03:07:54< can-ned_food> huh 20160920 03:07:56< shadowm> The only user-friendly aspect of the implementation of Windows' filesystem and satellite interfaces really is the case-insensitiveness. Everything else is plain demented. 20160920 03:08:40< celmin> Mac has always been case-insensitive too. 20160920 03:08:52< shadowm> And even said case-insensitiveness can't be reliably taken for granted. 20160920 03:09:10< tad_> AndWindows can be made case-sensistive. And to not care about / or \ also 20160920 03:09:24< shadowm> The latter is not optional. 20160920 03:09:34< celmin> Mac can also be made case-sensitive. 20160920 03:09:37< shadowm> It only works for the Win32 API though, IIRC. 20160920 03:09:39< celmin> I personally don't see the point. 20160920 03:09:46< can-ned_food> that's because Windows is case-insensitive to maintain backwards compatibility 20160920 03:09:57< shadowm> I recall reading that the native API just doesn't try to transform slashes. 20160920 03:10:16< shadowm> Which is mostly only relevant for people writing device drivers or system services. 20160920 03:10:24< tad_> And making it case sensitive works but breaks a number of applications. 20160920 03:11:26< celmin> Speaking of case-sensitivity, I wonder if it's possible for Wesnoth to warn if a file is included with case not matching that stored on disk. 20160920 03:11:38< can-ned_food> i think MS actually attempted to improve Windows with NT by introducing a number of features more compliant with POSIX, but most developers were not interested in revising 20160920 03:12:17< tad_> Actually, that was a posix-for-windows layer at about the same time and it died for lack of interest. 20160920 03:12:48< tad_> looks like the linux shim is going to take off, though 20160920 03:13:02< can-ned_food> interesting. i was thinking more of NTFS than Windows APIs 20160920 03:13:15< celmin> Linux shim? 20160920 03:13:31< tad_> Bash shell on Windows 10. 20160920 03:13:49< tad_> Currently runs an Ubuntu distro 20160920 03:13:54< can-ned_food> “a small library that transparently intercepts API calls” 20160920 03:14:04< tad_> Project on Github to switch that to Arch 20160920 03:14:48< shadowm> celmin: I suggested warning abouse case differences before. 20160920 03:14:55< tad_> It's basically Linux on Windows without the Linux kernel. Some stuff does not work, but an amazing lot does. 20160920 03:15:18< celmin> shadowm: Is it possible without native system calls? 20160920 03:15:25< shadowm> I highly doubt it. 20160920 03:15:43< celmin> Is there such a thing as case-insensitive UNIX? 20160920 03:15:52< shadowm> Yes, you are using one. 20160920 03:15:56< celmin> ...duh. 20160920 03:16:26< shadowm> Actually, it might be easy enough in any place where you are already using get_files_in_dir(). 20160920 03:17:02< shadowm> But elsewhere you probably don't want to explicitly enumerate multiple unrelated files just to do a case comparison. 20160920 03:17:31< celmin> My familiarity with POSIX is low, but my first guess would be to call stat() 20160920 03:17:56< shadowm> Nope. 20160920 03:17:57< tad_> We're talking about WML includes? 20160920 03:18:07< celmin> Not sure if that returns the filename though. 20160920 03:18:09< celmin> tad_: Yes 20160920 03:18:19< celmin> Potentially also Lua includes with require / dofile 20160920 03:18:35< shadowm> stat() won't help you because it doesn't give you the original filename back. 20160920 03:18:55< tad_> If it opens, go with it. If the system is case-insenstive and there's a dup you're out of luck 20160920 03:19:04< shadowm> Of course it's designed under the assumption that if you get anything back you got the correct name case. 20160920 03:19:19< tad_> To find the "real" name (one of them, that is) you usually have to walk the inodes. 20160920 03:19:22< shadowm> POSIX apparently requires case-sensitivity (which I guess makes OS X non-compliant). 20160920 03:19:38< shadowm> *directory entries 20160920 03:19:47< tad_> Sorta 20160920 03:20:09< celmin> tad_: The point of warnings would be for people who work on Windows / OSX and expect anyone to be able to play their addon - you could easily accidentally have a case mismatch that breaks it for Linux users. 20160920 03:20:35< tad_> Windows supports this, too. Hard links mean several "directory entries" point to the same file (inode .. information node). 20160920 03:20:58-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20160920 03:23:16< can-ned_food> i thought it was “index node”. but w/e 20160920 03:23:24< shadowm> On Linux's VFS implementation, inode is a data structure that carries file metadata. 20160920 03:23:48< shadowm> Most notably, it does not include file names. 20160920 03:24:04< celmin> …VFS? 20160920 03:24:10< shadowm> Virtual filesystem. 20160920 03:24:36< tad_> The layer between your application and the physical filesystem. 20160920 03:24:44< shadowm> Basically the filesystem-independent portion of the implementation of the filesystem hiearchy. 20160920 03:26:17< shadowm> What it does have is more intrinsically identifying fields such as the size, atime, mtime, ctime, mode, uid, gid. 20160920 03:26:30< shadowm> inodes can have many names (hard links) or none at all. 20160920 03:26:43< celmin> Apparently it has birthtime too (on OSX). 20160920 03:27:12< vultraz> my eye still hurts >_> 20160920 03:27:31< shadowm> e.g. when you unlink (delete) a file, you are just removing one of its name. If it's the last one, it will continue to exist until all file descriptors referencing it expire. 20160920 03:28:12< celmin> So if you unlink a file that's open by some application, it won't disappear until the app closes it...? 20160920 03:28:27< tad_> Which makes for great fun when you boot after a crash and fsck decides you're hosed. 20160920 03:28:35< tad_> celmin: Correct 20160920 03:29:34< tad_> celmin: OSx is the same. Windows is, too. DOS was NOT and boy we had fun. 20160920 03:29:37< shadowm> This is used by some applications to work with files that the user will never be able to access without special utilities. 20160920 03:30:15< shadowm> Open a temporary file, delete it, keep it open for as long as you need it. 20160920 03:30:50< tad_> Or open it, save as temp, delete origina, renamte temp, close original 20160920 03:31:05< tad_> howto safelt overwrite 20160920 03:31:39< shadowm> There is a Linux-specific atomic rename call these days. 20160920 03:31:48 * tad_ nods. 20160920 03:32:25< shadowm> Or atomic something else, I guess. Isn't rename() already atomic? 20160920 03:33:33< celmin> So I guess I have no idea how to get the real case of the filename... 20160920 03:34:09< celmin> Other than walking a directory, of course. 20160920 03:34:40< celmin> I guess we're really talking about paths, so you'd need to walk every directory that appears in the path. 20160920 03:34:58< tad_> It's probably provably unsolvable. At best you can get a best guess of one of the names which will often be the only one but you can't tell. 20160920 03:35:09< celmin> ? 20160920 03:35:18< tad_> Walking a path has its own perils .. they can loop. 20160920 03:35:31< celmin> Eh? 20160920 03:35:47< tad_> A Unix pathname can loop back on itself. 20160920 03:36:14< tad_> So you must record the inode path to detect it. 20160920 03:36:25< celmin> I don't get it... 20160920 03:36:58< bumbadadabum> celmin: Have you had the time to look at my PR yet? 20160920 03:37:18< celmin> bumbadadabum: Not yet. 20160920 03:37:21< bumbadadabum> desperate for feedback :( 20160920 03:37:35< shadowm> celmin: Symbolic links. 20160920 03:37:41< tad_> And loopback mounts 20160920 03:37:53< shadowm> You mean bind mounts? 20160920 03:38:17< shadowm> On Linux at least 'loopback' has a more specific connotation when talking about filesystems. 20160920 03:38:25< tad_> It's been ages I don't remember. Somethine like that which causes your sysadmin to junk and tear his hair out ... 20160920 03:38:41< tad_> jump ^ 20160920 03:39:27 * celmin finds a StackOverflow thread from ~2008 explaining how to do it. 20160920 03:39:42< celmin> But wasn't FSRef part of Carbon... 20160920 03:40:39< celmin> (Of course it would turn out that you have to use Apple's APIs for it rather than POSIX.) 20160920 03:41:18< tad_> Anyway. The upshot is (1) I don't think shadowm can fully solve his issue, just get 'good enough for most cases' and (2) we can detect some case problems on filenames but we might miss a lot of edge cases 20160920 03:41:45< celmin> Honestly, I'm not too worried about paths containing symbolic links. 20160920 03:42:01< celmin> I suspect most people making addons don't know what a symbolic link is (doubly so if they're working on Mac or Windows). 20160920 03:42:34< shadowm> Yeah, I'm sure what tad_ means is that you need to worry about having to resolve symbolic links and potentially falling into a loop. 20160920 03:42:34< tad_> Then you don't want to see my 4T NAS and how I solved the problem of a wife who wants the same file is 40 folders ... 20160920 03:42:42< shadowm> You, as programmer. 20160920 03:43:44< shadowm> campaignd does not convey symbolic links, but if I accidentally create a symlink loop in my local copy of an add-on I probably don't want to find out by watching Wesnoth eat up more memory than there's RAM available. 20160920 03:43:45< tad_> Hard links saved me about 1.5Tb when I de-duplicated her backup 20160920 03:43:45< celmin> shadowm: Doesn't that problem come up regardless of whether we're trying to find the canonical case? 20160920 03:43:50< shadowm> Over a period of probably several minutes or more. 20160920 03:44:12< tad_> shadowm: It does that just fine if you play for hours. No need for a symlink. 20160920 03:44:57< celmin> Speaking of deduplicating backups, apparently Time Machine even hard-links directories. 20160920 03:46:31< vultraz> celmin: confirmed your report of the listbox in the new dialog not showing at smaller resolutions 20160920 03:46:55 * tad_ dodges a big foot coming down from out of the sky. "And now for something completely different..." 20160920 03:47:09< vultraz> hah! xD 20160920 03:47:43< tad_> vultraz, celmin When I'm debugging you know those message "kill command was used .." in the center of the screen. 20160920 03:47:52< celmin> Twelve inchworms make a giant flying foot. Who knew! 20160920 03:47:59< tad_> Didn't one of you length the timeout for those a few weeks ago? 20160920 03:48:13< tad_> My issue is I do so many so fast I can't read the mess. 20160920 03:48:15< celmin> Speaking of that, I want to remove it. 20160920 03:48:36< celmin> Is there actually a timeout? 20160920 03:48:47< celmin> Or does it disappear when the map is next redrawn or something? 20160920 03:49:03< celmin> I seem to recall the planning mode enabled/disabled notification has the same problem. 20160920 03:49:14< tad_> I thought I saw a message out taking 5 min or so. no they stay for a draw but timeout and go when you change level 20160920 03:49:47< tad_> So, I tried a patch to remove the old when a new arrives. But I think it's in the wrong place and stepping on onther stuff 20160920 03:50:02< celmin> I dunno. 20160920 03:51:05< tad_> The debug commands I was jsut at and saw the message going up. Wold be easy to remove it. 20160920 03:51:35< celmin> Well, when I said "remove" that was kind of inaccurate. 20160920 03:51:43< tad_> My fork, GL_debug_announce branch has the one-liner. Works forme but I think it'll break other stuff 20160920 03:51:48< celmin> What I want to do is to show it iff there exists a remote network player. 20160920 03:52:41< tad_> Basically I remove the old label when a new one appears. 20160920 03:53:11< tad_> There is a scroll_label but I couldnot get it to work. 20160920 03:54:23< celmin> Okay, so apparently the way to get the canonical case of a file on MacOS is to pass it through FSPathMakeRef and then back through FSRefMakePath. Assuming those functions aren't deprecated by now. 20160920 03:58:11< tad_> As I recall, way back in the day, the best we could do was keep a ball bat handy for the Windows people who didn't realize their system was not the only one out there. 20160920 03:59:05< celmin> I'm not seeing anything similar on Windows... 20160920 04:00:32< celmin> NTFS is case-preserving, right? And Fat32 as well? 20160920 04:00:41< celmin> Original FAT was not, I'm pretty sure. 20160920 04:01:58< celmin> Oh, now I've found a StackOverflow thread for Windows, too. 20160920 04:03:47< tad_> Original was force-uppercase 20160920 04:04:29< celmin> Apparently SHGetFileInfo() might do what is needed here. 20160920 04:04:37< tad_> Like CP/M .. and so we the system calls, for that matter. 20160920 04:05:10< celmin> It would be great if boost::filesystem and std::filesystem could actually integrate this into their API. 20160920 04:05:27-!- ToBeCloud [uid51591@wikimedia/ToBeFree] has quit [Quit: Connection closed for inactivity] 20160920 04:05:55-!- JyrkiVesterinen [~JyrkiVest@87-100-221-131.bb.dnainternet.fi] has joined #wesnoth-dev 20160920 04:08:19< celmin> Just for reference and posterity and stuff, here are the two StackOverflow threads: 20160920 04:08:20< celmin> http://stackoverflow.com/questions/370186/how-do-i-find-the-correct-case-of-a-filename 20160920 04:08:21< celmin> http://stackoverflow.com/questions/74451/getting-actual-file-name-with-proper-casing-on-windows 20160920 04:08:41< shadowm> I'm not sure if FAT32 (or FAT16 on a LFN-capable environment for that matter) is case-preserving but NTFS definitely is. 20160920 04:09:14< shadowm> I have updated my PR. 20160920 04:09:18< celmin> Probably need to worry about FAT32 as long as we support XP (and we should support XP as long as there's no reason not to). 20160920 04:09:40< shadowm> https://github.com/wesnoth/wesnoth/pull/778 . Still just a preview, it's not suitable for merging yet. 20160920 04:09:52< shadowm> We need to worry about FAT32 forever. 20160920 04:10:30< shadowm> People generally recommend against using NTFS and other journaled filesystems on flash media, so you'll keep seeing FAT32 on USB pendrives and the like. 20160920 04:10:51< celmin> Ah, right. 20160920 04:11:09< celmin> FAT32 is commonly used there because both Mac and Windows support it (and probably also Linux). 20160920 04:11:32< shadowm> That is a reason as well. 20160920 04:11:36< celmin> (What's wrong with journaled filesystems?) 20160920 04:11:52< shadowm> People believe it shortens the lifespan of flash memory. 20160920 04:12:04< shadowm> As in, significantly more than just writing files like usual. 20160920 04:12:24< celmin> Okay... 20160920 04:13:11< shadowm> I'm not qualified to say whether how true this is (it's probably increasingly irrelevant for SSDs, but USB pendrives and memory cards *are* dirt-cheap) but the point is that people do it. 20160920 04:13:19< shadowm> s/whether// 20160920 04:13:45< Aginor> SSDs have clever firmware to manage the write cycles 20160920 04:13:59< shadowm> And manufacturers, at least last time I checked, still ship pendrives with FAT32 filesystems. 20160920 04:14:14< Aginor> I'd expect flash drives less so, but they are instead cheap and nasty and tend to have crummy filesystems that eat your data instead 20160920 04:14:46< can-ned_food> the filesystems eat your data? 20160920 04:15:03< shadowm> FAT32 has serious reliability problems on power loss/unexpected removal. 20160920 04:15:07< can-ned_food> most people should reformat their stuff anyways 20160920 04:15:19< Aginor> can-ned_food: don't pull out a fat32 drive after writing to it without nicely ejecting to it 20160920 04:15:26< shadowm> But it seemed to me like Windows now defaults to using synchronous writes to those these days. 20160920 04:15:28< can-ned_food> oh, that's what you mean 20160920 04:15:43< Aginor> a journaled filesystem is more resilient 20160920 04:15:47< shadowm> *to USB pendrives 20160920 04:15:47< celmin> I think at one point I had HFS+ on a memory stick. 20160920 04:16:31< Aginor> I heartily reccommend using a real filesystem on SSDs 20160920 04:16:33< can-ned_food> depends on how many write events you have and how much you can spare to lose from the substrate 20160920 04:16:47< can-ned_food> with flash devices 20160920 04:16:49< Aginor> although you can leave some extra free space if you want to extend the lifespan of it 20160920 04:16:50< celmin> The problem with HFS+ is, of course, that Windows cannot read it. 20160920 04:16:56< shadowm> I do use ext4 on my SSD, certainly. 20160920 04:17:24< Aginor> celmin: I suspect that's the real reason for fat32 on pen drives, interoperability 20160920 04:17:46< shadowm> I had a bit of a panic situation recently because I got hit by a kernel bug wherein metadata checksums got corrupted due to a race condition that was most reliably triggered on SSDs. 20160920 04:18:10< shadowm> But after some research I found out it was just that and not the drive failing. 20160920 04:18:23< celmin> Didn't gfgtdf make the Lua kernel initialize earlier? Because it looks like that broke something. 20160920 04:18:38< shadowm> (And this is why race conditions are bad news.) 20160920 04:19:48-!- celmin [~celticmin@unaffiliated/celticminstrel] has quit [Quit: And lo! The minstrel departs, to spread the music to the masses!] 20160920 04:21:01< vultraz> celticminstrel: so i really cannot see any reason the listbox rows would not display :/ 20160920 04:21:15< tad_> shadowm: When I first used flash memory, you were lucky to get 2K write cycles before killing it. That quickly increased. 20160920 04:21:16< celticminstrel> Fun! 20160920 04:21:49< tad_> shadowm: Nowadays it's a few million. But a journaling filesystem can burn that up in a hurry if you're making a lot of small changes. 20160920 04:22:37< tad_> celticminstrel: yes lua init was moved forward. sometime in the past few days 20160920 04:22:49< celticminstrel> Not sure why that would break this, mind you. 20160920 04:23:11< vultraz> below 1152x864 doesn't work 20160920 04:23:15< celticminstrel> (For reference, what it broke is calling things like wesnoth.show_popup_dialog() before prestart.) 20160920 04:23:26< celticminstrel> (ie, from a [lua] block at scenario toplevel.) 20160920 04:23:31< vultraz> really? 20160920 04:23:32< vultraz> that's broken 20160920 04:23:38< celticminstrel> ? 20160920 04:23:42< vultraz> ?* 20160920 04:24:07< celticminstrel> Yeah. I have one in my test scenario in order to catch it breaking, and it's now complaining about not having a video object. 20160920 04:24:18< vultraz> interesting 20160920 04:24:24< vultraz> it worked for me last time i checked 20160920 04:24:35< celticminstrel> When was that? 20160920 04:24:46< tad_> So, now that my wifely interruption has completed .. what was the thought about those messages in the middle of the map for debug commands .. kill 'em off? find out how to scroll 'em? 20160920 04:24:48< vultraz> not too long ago 20160920 04:24:54< celticminstrel> About how long? 20160920 04:25:22< celticminstrel> tad_: The idea is to show them iff there exists a remote network player. 20160920 04:25:50< celticminstrel> If you're working on a campaign or testing things in local MP, I can't see any reason you'd want them. 20160920 04:25:58< tad_> celticminstrel: And if they come in more than 1-per-5-min? 20160920 04:26:06< tad_> I see them SP in debug 20160920 04:26:19< celticminstrel> Killing the previous one seems reasonable in that case. 20160920 04:26:28< tad_> Mind you we're talking the big messages in the center, not the little ones in the top-left corner from WML and Lua 20160920 04:26:35< celticminstrel> Yeah, I'm aware. 20160920 04:26:42< tad_> ok. 20160920 04:26:59< celticminstrel> I think the Planning Mode Enabled/Disabled are of the same sort. Possibly also some of the instructions that pop up in the tutorial. 20160920 04:27:43< tad_> Sounds like a lot of places use 'em. I guess I can back-track from the low-level I found and find all uses. 20160920 04:30:00-!- nore [~ncourant@sas.eleves.ens.fr] has quit [Ping timeout: 260 seconds] 20160920 04:30:47-!- nore [~ncourant@sas.eleves.ens.fr] has joined #wesnoth-dev 20160920 04:30:48< celticminstrel> So bumbadadabum, the regular schedule seems fine with the changes... did you make anything darker than that? 20160920 04:32:43-!- Bonobo [~Bonobo@2001:44b8:254:3200:518f:2181:8434:3ec] has joined #wesnoth-dev 20160920 04:33:22 * celticminstrel poke vultraz 20160920 04:33:29< vultraz> what? 20160920 04:33:36< celticminstrel> [Sep 20@12:24:48am] vultraz: not too long ago 20160920 04:33:36< celticminstrel> [Sep 20@12:24:54am] celticminstrel: About how long? 20160920 04:33:46< vultraz> uh 20160920 04:33:56< celticminstrel> Just an estimate. 20160920 04:33:59< vultraz> back when i fixed that bug with move unit 20160920 04:34:02< vultraz> or whatever tag it was 20160920 04:34:06< vultraz> i fixed a bug 20160920 04:35:05< celticminstrel> vultraz: This? 26327a5bdc41180ae1a4b73bffbaf668ca2c31da 20160920 04:35:17< celticminstrel> ...wait no, don't bother. 20160920 04:35:21< celticminstrel> That's from 2015. :/ 20160920 04:35:48< vultraz> uh no no 20160920 04:35:50< vultraz> it was something in wml-tags.lua 20160920 04:35:53< celticminstrel> vultraz: I need more about this commit to find it. 20160920 04:35:56< celticminstrel> Hmm okay. 20160920 04:36:24< celticminstrel> This? 30fe0cecd8c0f55460adcc7215f07bb7b3389e5c 20160920 04:36:39< celticminstrel> Or maybe this? 6aa060ed060ef94adbb5f2380b596cb9e7d5946b 20160920 04:36:56< vultraz> ah yes 20160920 04:37:03< celticminstrel> Which one? 20160920 04:37:58< vultraz> that one 20160920 04:38:07< celticminstrel> I posted two. Which one? 20160920 04:38:18< vultraz> the latter one 20160920 04:38:38< celticminstrel> That's back in March. 20160920 04:38:46< vultraz> wait what???????????? 20160920 04:39:13-!- can-ned_food [~me@dynamic-acs-24-154-138-63.zoominternet.net] has quit [Quit: Konversation terminated!] 20160920 04:39:32< celticminstrel> 'Date: Sat Mar 5 11:55:40 2016 +1100' 20160920 04:39:40< vultraz> oh 20160920 04:39:42< vultraz> derp 20160920 04:39:49< vultraz> I mean 30fe0cecd8c0f55460adcc7215f07bb7b3389e5c 20160920 04:39:52< vultraz> i didn't see the other one 20160920 04:40:00< celticminstrel> Okay, that's fairly recent... 20160920 04:40:17< celticminstrel> You're saying that the Lua pre-prestart dialogs were working when you made that commit? 20160920 04:40:54< vultraz> yes 20160920 04:41:00< vultraz> and i just confirmed now they are not 20160920 04:42:19< celticminstrel> Uhh. How do I teel git log to shorten the hashes... 20160920 04:42:40< celticminstrel> ^tell 20160920 04:43:26< celticminstrel> Ah, got it. 20160920 04:44:18< celticminstrel> 663 commits since then. :/ 20160920 04:44:33< vultraz> what, to the glk? 20160920 04:44:39< celticminstrel> ? 20160920 04:44:50< celticminstrel> 30 of them by gfgtdf 20160920 04:45:03< vultraz> I assume you mean 663 total 20160920 04:45:08< celticminstrel> Yes. 20160920 04:45:12< celticminstrel> 663 commits. 20160920 04:45:26< celticminstrel> What's "glk" mean? 20160920 04:45:34< vultraz> game lua kernel 20160920 04:45:38< celticminstrel> Ah. 20160920 04:46:08< celticminstrel> My guess as to the culprit would be 9cc8097 20160920 04:46:19< vultraz> trying that now 20160920 04:46:30< celticminstrel> Likewise. 20160920 04:47:22< vultraz> indeed it works again 20160920 04:47:50< celticminstrel> Okay, I guess I won't bother confirming then. 20160920 04:49:45< vultraz> so the question is, why does it break 20160920 04:50:51< celticminstrel> Hmm, what's that first paramter to the game_lua_kernel constructor? 20160920 04:50:51< vultraz> (also related, I notice you restored that ugly TRY stuff in the window builder :/) 20160920 04:51:08< celticminstrel> ^parameter 20160920 04:51:15< celticminstrel> vultraz: I restored it because it fixed Travis. :| 20160920 04:51:35< vultraz> we need to find a proper fix 20160920 04:51:40< celticminstrel> That would be great! 20160920 04:52:11< vultraz> celticminstrel: the first argument to the glk is a video pointer :/ 20160920 04:52:18< celticminstrel> My guess is that the proper fix would be somewhere in the arcane depths of the REGISTER_DIALOG macro. 20160920 04:52:27< celticminstrel> vultraz: Okay, so if that's the case... why did it work before? 20160920 04:52:49< vultraz> no idea 20160920 04:53:02< celticminstrel> Because, both before and after the commit, nullptr was passed for that parameter. 20160920 04:55:01< celticminstrel> Hmm, previously it was initialized in game_state::init rather than in the constructor... 20160920 04:55:20< celticminstrel> Or, it was constructed there rather than in the constructor. 20160920 04:56:02< celticminstrel> It wasn't initialized unitl play_controller::init, which incidentally takes the video object as a parameter. 20160920 04:56:20< celticminstrel> Though that's not passed to the initialized call... 20160920 04:56:46< celticminstrel> ^initialize 20160920 04:57:27< celticminstrel> It's the initialize call that runs toplevel Lua scripts. 20160920 04:57:53-!- JyrkiVesterinen [~JyrkiVest@87-100-221-131.bb.dnainternet.fi] has quit [Quit: .] 20160920 04:58:33< celticminstrel> Possible fix: Move that code into glk::load_game (perhaps the preload scripts too?) 20160920 05:14:45-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 05:14:49< celticminstrel> You'd still get the error if you tried to show a dialog from a custom [effect], but you shouldn't be doing that anyway. 20160920 05:19:35-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 260 seconds] 20160920 05:22:23-!- irker644 [~irker@uruz.ai0867.net] has quit [Quit: transmission timeout] 20160920 05:22:41< celticminstrel> Hmm. I need a way to test if a location is fogged from Lua... 20160920 05:23:33< celticminstrel> I don't see such a thing in game_lua_kernel.cpp... 20160920 05:27:26< tad_> If you need to add it, add shroud, too. Sounds like a job for i-forget-the-label we talked aobut for location 20160920 05:27:31< celticminstrel> Yeah. 20160920 05:27:31< tad_> location_id 20160920 05:27:56< celticminstrel> Ooooh, game_display::scroll_to_tile accepts a parameter that prevents scrolling if the location is already onscreen. 20160920 05:28:26< celticminstrel> And there's a scroll function that tries to put two locations onscreen at once. 20160920 05:28:37< celticminstrel> Seems like this is something that could be exposed to Lua to fix that problem. 20160920 05:29:01< tad_> yay 20160920 05:29:10< celticminstrel> It's not a perfect fix, I guess. 20160920 05:29:22< celticminstrel> Because there's still the chance that the message dialog will actually cover up the unit. 20160920 05:29:37< celticminstrel> Not entirely sure if I can work around that. 20160920 05:30:08< celticminstrel> I might be able to do so with scroll_to_tiles by telling the game to try to ensure that the tile two to the south of the unit is also visible. 20160920 05:30:18< tad_> Not easily since it depends upon the size of the profile image and the side(s) 20160920 05:30:43< celticminstrel> Well yes, there probably won't be any absolutely foolproof method, but I think what I just described could help at least. 20160920 05:31:38< tad_> 'if the unit speaking is north of the tile (last unit which spoke) and still on screen then do not scroll' 20160920 05:31:53< celticminstrel> Huh? 20160920 05:31:57< tad_> If the north unit speaks first you jump to the south then never jump again 20160920 05:32:30< celticminstrel> I'm not quite sure I get what you're saying. 20160920 05:32:48< celticminstrel> Something like... don't scroll if the unit is north of the centre tile? 20160920 05:32:59< tad_> And still on screen. 20160920 05:33:08< celticminstrel> I'm not sure I can detect which is the centre tile. 20160920 05:33:15< celticminstrel> But it's a thought. 20160920 05:33:58< tad_> I'm tracking down the floating text calls. So far most have a remove before they display but none cooperate with others. 20160920 05:34:55< tad_> There is a LOT of opportunity for DRY at this level, too. 20160920 05:35:07< celticminstrel> DRY? 20160920 05:35:16< tad_> Don't repeat yourself. 20160920 05:35:22< celticminstrel> Ah 20160920 05:35:31< tad_> Most of the calls to the low-level function are virtually identical. 20160920 05:35:40< tad_> A lot of copy-n-paste, looks like. 20160920 05:36:18-!- vincent_c [~bip@vcheng.org] has quit [Quit: Coyote finally caught me] 20160920 05:36:41< tad_> I'm not sure it's all the same message area / layer / whatever. But if so it's crying for encapsulation and cooperation. 20160920 05:36:53-!- vincent_c [~bip@vcheng.org] has joined #wesnoth-dev 20160920 05:37:51< tad_> Anyway, I'm gonna waste a few hours on it tomorrow morning then get back to THoT. I'm just trying to clear a todo which looked easy and is not turning out that way ... 20160920 05:38:05 * tad_ heads off to bed ... 20160920 05:38:09-!- tad_ [add94167@gateway/web/freenode/ip.173.217.65.103] has quit [Quit: Page closed] 20160920 05:42:33< shadowm> Okay, I've rebased my local version of the file_dialog branch so I can start removing the GUI1 filechooser. 20160920 05:53:30< celticminstrel> Hmm, so if it's a death animation, it's fine to just add an attack to the unit and leave it there, but in a victory animation, that's probably not a good idea. 20160920 05:54:07< celticminstrel> It'd be even better if there was a way to construct an attack without a unit, but it should be fine to just add it and immediately remove it, I think. 20160920 06:07:20-!- Kwandulin [~Miranda@p200300760F2C712F0C67A2200E6A32DF.dip0.t-ipconnect.de] has joined #wesnoth-dev 20160920 06:09:09-!- esr [~esr@wesnoth/developer/esr] has quit [Ping timeout: 272 seconds] 20160920 06:09:20-!- TC02 [~quassel@venus.arosser.com] has quit [Quit: No Ping reply in 180 seconds.] 20160920 06:09:26-!- esr [~esr@wesnoth/developer/esr] has joined #wesnoth-dev 20160920 06:09:35-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 06:10:27-!- TC02 [~quassel@venus.arosser.com] has joined #wesnoth-dev 20160920 06:13:38-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 244 seconds] 20160920 06:14:00-!- JyrkiVesterinen [~JyrkiVest@nblzone-242-23.nblnetworks.fi] has joined #wesnoth-dev 20160920 06:21:12< shadowm> https://dl.dropboxusercontent.com/u/21371130/screenshots/Screenshot_20160920_032044.png 20160920 06:21:54< shadowm> The thing that the GUI1 filechooser couldn't do. 20160920 06:22:36< shadowm> I guess I should allow callers to relabel "OK" and relabel it by default as "Open" or "Save". 20160920 06:25:14< celticminstrel> My guess is going to be that this new thing is... the detailed caption at the top? 20160920 06:25:41 * celticminstrel never really saw the file chooser until today when I looked at the "edit schedule" dialog in the editor. 20160920 06:27:17-!- Appleman1234 [~Appleman1@KD119104047049.au-net.ne.jp] has quit [Ping timeout: 265 seconds] 20160920 06:27:34< shadowm> Yes. 20160920 06:27:51< shadowm> Also, how didn't you ever see the file chooser before? I take it you've never used the map editor? 20160920 06:29:39< celticminstrel> Oh right. I forgot about that. 20160920 06:29:58< celticminstrel> I haven't seen it in other uses though. Probably. 20160920 06:30:42< shadowm> This is what an example invocation of the new dialog looks like: https://gist.github.com/shikadilord/9f6005795b646ff6e3d63754a3ccce63 20160920 06:30:49< shadowm> vultraz: Feel this is acceptable? 20160920 06:32:11< celticminstrel> It feels a bit weird to have the set_ prefix with chained calls like that, but whatever. 20160920 06:32:35< celticminstrel> Also normally I see the chained calls being applied in the declaration, but whatever... 20160920 06:32:42< shadowm> STOP SAYING WHATEVER. 20160920 06:32:46< celticminstrel> WHATEVER 20160920 06:32:48< shadowm> So you'd prefer them to share names with the getters? 20160920 06:32:57< celticminstrel> Yeah, I can see that being a problem. 20160920 06:33:19< shadowm> Also, I can't really do the chaning in the declaration there. 20160920 06:33:30< shadowm> Or can I? 20160920 06:33:37< celticminstrel> I mean you could certainly add a get_ prefix on the getters and drop the prefix on the setters, but that doesn't really help much. 20160920 06:33:39< shadowm> Even if it's legal it'd look really weird. 20160920 06:33:59< celticminstrel> shadowm: I think you could do auto dlg = gui2::tfile_dialog().set_*(); 20160920 06:34:26< shadowm> Wait. 20160920 06:34:30< celticminstrel> Though that might require it to be copyable or movable... 20160920 06:34:32< celticminstrel> Not sure. 20160920 06:34:33< shadowm> But the setters return regular references. 20160920 06:34:42< celticminstrel> Hm? 20160920 06:34:51< shadowm> Never mind. 20160920 06:35:50< shadowm> gui2::tdialog is not explicitly noncopyable or nonmovable but I somehow doubt doing either would work well. 20160920 06:36:14< shadowm> There's a private field that's a vector of pointers. 20160920 06:36:33< shadowm> It's managed by the destructor. 20160920 06:36:36< celticminstrel> Well, it could easily be movable with that; making it copyable would be work. 20160920 06:37:21< shadowm> By the way, I take it nobody's seriously considered my proposal to drop the silly t type names? 20160920 06:37:23< celticminstrel> (And probably not worth it since there's no reason you'd want to copy a dialog around.) 20160920 06:37:30-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has quit [Read error: Connection reset by peer] 20160920 06:37:42< celticminstrel> shadowm: I've seriously considered it, but it's such a widespread change that I hesitate to actually do it. 20160920 06:38:12< shadowm> Sure, as long as people like vultraz can't stop touching the GUI code every five hours you're bound to give someone a hard time with merge conflicts. 20160920 06:38:51< shadowm> You'd need to establish a short code freeze for the task. 20160920 06:39:23< celticminstrel> We normally have a code freeze when prepping for a release, right? 20160920 06:39:35< celticminstrel> That might be a good time (and merge it right after the release). 20160920 06:39:55< celticminstrel> I guess that's more of a feature freeze, not a full code freeze, but still. 20160920 06:40:13< shadowm> I have no idea? 20160920 06:40:24< celticminstrel> Well, if we don't, we probably should. :P 20160920 06:40:49< shadowm> I don't run this impending trainwreck anymore, so I no longer know what's standard practice. 20160920 06:46:46< celticminstrel> Impending trainwreck, huh... 20160920 06:52:22< shadowm> I guess there isn't a POSIX mechanism to enumerate mount points? 20160920 06:53:04< celticminstrel> No idea! 20160920 06:53:21< celticminstrel> On OSX they're normally all stored in /Volumes 20160920 06:53:28< shadowm> By the sounds of it getmntent()'s interface and semantics aren't consistent across all Unixes. 20160920 06:53:41< shadowm> And the mount list isn't always /etc/mtab. 20160920 06:54:15< celticminstrel> (I say "normally" because you can use advanced features to, say, mount a drive at /Users ) 20160920 06:54:23< celticminstrel> (Which I have done.) 20160920 06:54:38< shadowm> Not that mtab is terribly user-friendly, mind you: http://pastebin.com/raw/nGtbenwa 20160920 06:54:51-!- Kwandulin [~Miranda@p200300760F2C712F0C67A2200E6A32DF.dip0.t-ipconnect.de] has quit [Ping timeout: 250 seconds] 20160920 06:54:58-!- Kwandulin [~Miranda@p200300760F2C71F10C67A2200E6A32DF.dip0.t-ipconnect.de] has joined #wesnoth-dev 20160920 06:55:33< shadowm> I could make the function Linux and Windows-specific for now and let someone else figure out what to do on OS X. 20160920 06:55:42< shadowm> But I'm not even sure what to do on Linux. 20160920 06:56:26< celticminstrel> I think listing the contents of the /Volumes directory would work on OSX for 99% of cases. 20160920 06:56:35< shadowm> I could just maintain a list of special filesystems and filter those out of the mtab listing. 20160920 06:56:58< celticminstrel> Though I've noticed that my ftp client on Windows doesn't seem to like listing the /Volumes directory... 20160920 06:57:12< shadowm> Or I could write code that uses the UDisks2 D-Bus API. 20160920 06:57:13< celticminstrel> Not sure if that means anything. 20160920 06:57:27< celticminstrel> I have no idea what that API is. 20160920 06:57:33< shadowm> lINUX. 20160920 06:57:38< shadowm> *Linux. 20160920 06:57:43< JyrkiVesterinen> On Linux you could also use /proc/mounts. 20160920 06:57:57< shadowm> JyrkiVesterinen: Yeah, no. 20160920 06:58:19< shadowm> /etc/mtab is essentially /proc/mounts by another name (/proc/self/mounts). 20160920 06:58:46< shadowm> I guess /proc/mounts is the kernel version and the /proc//mounts uh I have no idea. 20160920 06:59:02-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20160920 06:59:18< shadowm> I was writing that sentence with namespaces in mind before realizing that the existence of a "kernel version" of mounts would defeat the whole point of namespaces. 20160920 06:59:33< shadowm> Probably. Maybe. 20160920 07:00:32< shadowm> The problem is that a list of pseudofilesystems is bound to become obsolete pretty quickly. 20160920 07:00:42< JyrkiVesterinen> From what I can tell, /etc/mtab is managed by userspace and can be inaccurate. 20160920 07:01:00< shadowm> lrwxrwxrwx 1 root root 19 Nov 25 2015 /etc/mtab -> ../proc/self/mounts 20160920 07:01:08< JyrkiVesterinen> The mount command has a switch -n or --no-mtab that skips updating /etc/mtab. 20160920 07:02:18< celticminstrel> Okay, so what should be the parameters to unit_animator:add()... 20160920 07:02:27< celticminstrel> First parameter is the unit. Second is the animation flag. 20160920 07:02:31< shadowm> This is util-linux 2.28.1 FTR. 20160920 07:03:06< JyrkiVesterinen> Does anything stop the user from simply deleting /etc/mtab and replacing it with a regular file? 20160920 07:03:08< shadowm> No idea who maintains the symbolic link, though. 20160920 07:03:14< shadowm> Probably not. 20160920 07:03:16< JyrkiVesterinen> (The user can't mess with procfs in the same way.) 20160920 07:03:28< celticminstrel> Other possible parameters include: the "hits" value, a facing location, two integer values, a boolean, a string, a color, two attacks, and two attacks. 20160920 07:04:02< shadowm> mount is usually used as root. 20160920 07:04:10< celticminstrel> I could a) take it as a parameter pack (ie table), allowing for "keyword" arguments, or b) figure out the meaning of each parameter based on its type. 20160920 07:04:15< celticminstrel> Or some combination of the two. 20160920 07:04:22< shadowm> There is a fair amount of files in /proc that can be written to. 20160920 07:04:59< JyrkiVesterinen> Still, if you're going to make the mechanism Linux-specific, you could just as well use a more reliable way to enumerate mount points. 20160920 07:05:07< shadowm> Anyway, the point is that using the mount list is still awkward and not future-proof. 20160920 07:05:28< shadowm> I suspect I'm going to skip on POSIX entirely and only make the function meaningful on Windows. 20160920 07:06:03 * celticminstrel wonders whether OSX has a better way than listing directory contents of /Volumes 20160920 07:06:08< shadowm> Because I don't really feel like writing D-Bus client code. 20160920 07:06:17< celticminstrel> I suppose Cocoa and CoreFoundation probably have something. 20160920 07:06:20< shadowm> Or pulling in more optional dependencies. 20160920 07:06:46< celticminstrel> (I'd use CoreFoundation since that doesn't require compiling as Objective-C++.) 20160920 07:07:31< celticminstrel> So no-one cares about how I define the add_animation function? 20160920 07:07:53< celticminstrel> (This is in Lua, in case that wasn't already obvious.) 20160920 07:09:12< shadowm> Perhaps vultraz would care if his right eye and gastrointestinal tract hadn't decided to abscond a few hours ago. 20160920 07:10:36< shadowm> Pointing out that this is a thing that happened just in case he never recovers from that situation. You know, the hit-by-a-truck principle and all. 20160920 07:11:03< shadowm> I think it's perfectly fair to exaggerate his predicament slightly for comedic purposes, too. 20160920 07:12:34< shadowm> I guess NTFS mount points are pretty rarely used by our target audience, yes? I'll enumerate drive letters only then. 20160920 07:12:48< celticminstrel> That seems fair to me. 20160920 07:12:51< JyrkiVesterinen> Yes, it sounds completely reasonable. 20160920 07:27:46< vultraz> shadowm: the dialog is acceptable save for that empty space above the textbox 20160920 07:28:24< celticminstrel> vultraz, Jyrki: Any opinion on the add_animation function 20160920 07:29:05< shadowm> vultraz: That's a listbox layout bug I think. 20160920 07:29:27< shadowm> I did not ask you whether the dialog was acceptable. I asked you about the caller example. 20160920 07:30:00< JyrkiVesterinen> celticminstrel: Not really. I haven't used the existing animation API, so I don't know anything about what is good/bad in it. 20160920 07:31:02< shadowm> /home/shadowm/src/wesnoth/src/campaign_server/campaign_server.cpp:316:2: error: ‘sighup_’ was not declared in this scope 20160920 07:31:43< shadowm> loonycyborg: Can you make sure that the non-Win32 parts of campaignd don't break the Win32 build? Thanks. 20160920 07:31:50< shadowm> loonycyborg: And don't forget the SIGPIPE issue. 20160920 07:32:12-!- boucman_work [~boucman@209.57.66.86.rev.sfr.net] has joined #wesnoth-dev 20160920 07:32:21< vultraz> shadowm: how is it a listbox layout bug? 20160920 07:33:23< vultraz> as for the caller.. 20160920 07:33:25< shadowm> Because it doesn't happen if the dialog is shorter. 20160920 07:33:35< shadowm> i.e. if the listbox doesn't decide it needs to grow. 20160920 07:33:44< vultraz> it works 20160920 07:34:21< shadowm> window key handler fires 20160920 07:34:27< shadowm> What is this in stderr? 20160920 07:34:45< vultraz> accidental debug code I committed that has since been removed. 20160920 07:35:11< shadowm> Okay. 20160920 07:38:58< celticminstrel> Does anyone happen to know how I convert SDL_Color to Uint32? 20160920 07:40:47< vultraz> Uint32 foo { color.r << color.g << color.b << color.a }; maybe? 20160920 07:40:58< celticminstrel> :| 20160920 07:41:25< celticminstrel> I was hoping for a utility function. 20160920 07:41:36< celticminstrel> (BTW that's wrong, you need |'s in there somewhere/) 20160920 07:41:38 * shadowm pats vultraz on the head. 20160920 07:41:51< shadowm> That was a good attempt, but that's not how bitwise math works. 20160920 07:42:53< shadowm> celticminstrel: Last time I checked I think people just did it by hand. 20160920 07:44:20< celticminstrel> I suddenly get a feeling that there are three or four utility functions scattered throughout the Wesnoth source for this. 20160920 07:44:31< shadowm> It should be Uint32 foo = color.r << 24 + color.g << 16 + color.b << 8 + color.a anyway. Probably. That's assuming the Uint32 is expected to be RGBA and not ARGB or whatever. 20160920 07:45:04< vultraz> oh, right 20160920 07:45:16< vultraz> I even had that in an uncommitted change of mine and forgot :| 20160920 07:45:16< shadowm> I'm not great at dealing with bits either but I'm fairly sure that doesn't at least result in a chain sequence of UB. 20160920 07:46:42< celticminstrel> Well, after asking I realized I should probably check how it was done in the original animate code. It turns out the display class has a static function for this. 20160920 07:46:45< shadowm> I know I'm not supposed to acknowledge the presence of Wine, but I feel sorely tempted to make --wconsole the default with it. 20160920 07:47:13< celticminstrel> Although I'm not quite sure if [animate_unit]red,green,blue are supposed to be in the 0..255 range. 20160920 07:47:45< celticminstrel> Eh, I suppose if they're passed to that, they must be? Whatever. 20160920 07:47:50< shadowm> Yay, I found a way to enumerate drives without doing awkward null-terminated vector parsing. 20160920 07:48:18< celticminstrel> Yay! 20160920 07:48:42< shadowm> http://pastebin.com/raw/VUhx9T5E 20160920 07:49:11< shadowm> So what would the OS X version of the guesswork vector be? 20160920 07:49:51< celticminstrel> The only way I know of to check mounted drives is to enumerate the contents of the /Volumes directory, but I wouldn't be surprised if there's a better way. 20160920 07:50:21< celticminstrel> Okay, I think this is finished. Therefore, it is time to 20160920 07:50:22< shadowm> Are its children more directories? 20160920 07:50:23-!- celticminstrel [~celmin@unaffiliated/celticminstrel] has quit [Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] 20160920 07:50:29< shadowm> Do they-- wait. 20160920 07:50:45< shadowm> Don't... go... 20160920 07:51:13< shadowm> celticminstrel: Does /Volumes only contain subdirectories/am I only supposed to care about its subdirectories? Are their names special in some way? 20160920 07:51:34< shadowm> Also, how likely is this to change in the future? Has it changed before? 20160920 07:51:36< JyrkiVesterinen> How about removing FIXME from the comment, given that no one probably wants to implement the more reliable version? 20160920 07:52:10< shadowm> Eh. 20160920 07:52:50< shadowm> Yeah. 20160920 07:53:15< shadowm> Along the same vein, I could probably enumerate /media and /media/$USER on Linux at least. 20160920 07:53:31< shadowm> OTOH that still seems really crummy and failprone. 20160920 07:53:54< JyrkiVesterinen> I'm not sure if /media exists in all distributions. 20160920 07:54:13< JyrkiVesterinen> I use siduction (Debian derivative), and it stores mount points in /disks. 20160920 07:54:15< shadowm> I know that back in the day some distributions used /mnt instead, yes. 20160920 07:54:45< shadowm> Bah, never mind then. I'll stick to the guesswork list then. 20160920 07:55:06< shadowm> Maybe only push directories that actually exist. 20160920 07:56:39< shadowm> What's with Google's aversion to / in search queries? 20160920 07:57:37< shadowm> It just disregards it no matter what I do. To make things worse, the search autocomplete even includes terms that start with /. 20160920 07:57:48-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 07:59:50-!- TC02 [~quassel@venus.arosser.com] has quit [Quit: No Ping reply in 180 seconds.] 20160920 08:01:13-!- TC02 [~quassel@venus.arosser.com] has joined #wesnoth-dev 20160920 08:02:30-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 265 seconds] 20160920 08:07:33-!- irker644 [~irker@uruz.ai0867.net] has joined #wesnoth-dev 20160920 08:07:33< irker644> wesnoth: Charles Dang wesnoth:master 61b5cde7a0da / data/gui/window/game_stats.cfg: Game Stats: removed horizontal spacer line https://github.com/wesnoth/wesnoth/commit/61b5cde7a0da2ed93f5f664f4d2f5f78244cb1b5 20160920 08:07:34< irker644> wesnoth: Charles Dang wesnoth:master b2e6bd5bdcac / src/gui/dialogs/game_version.cpp: Game Version: removed unnecessary loop https://github.com/wesnoth/wesnoth/commit/b2e6bd5bdcac6f467987fb24cec20634a8a0001d 20160920 08:13:23< vultraz> it seems rather weird that the server takes config tags to trigger actions... 20160920 08:16:24-!- Duthlet [~Duthlet@dslb-146-060-179-135.146.060.pools.vodafone-ip.de] has joined #wesnoth-dev 20160920 08:35:52< irker644> wesnoth: Charles Dang wesnoth:master 4ffd212c9191 / src/gui/dialogs/multiplayer/faction_select.cpp: Faction Select: open to any previously selected leader https://github.com/wesnoth/wesnoth/commit/4ffd212c9191b0c55ebab675ca9b7d04724bbbe8 20160920 08:36:02< vultraz> *usability increases 10 points* 20160920 08:36:48< vultraz> still need to un-fuck the gender toggles :/ 20160920 08:36:57< vultraz> I screwed up something in tgroup 20160920 09:00:59-!- JyrkiVesterinen [~JyrkiVest@nblzone-242-23.nblnetworks.fi] has quit [Quit: .] 20160920 09:11:54-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20160920 09:12:00-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20160920 09:22:14-!- JyrkiVesterinen [~JyrkiVest@nblzone-242-23.nblnetworks.fi] has joined #wesnoth-dev 20160920 09:46:04-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 09:48:34-!- JyrkiVesterinen [~JyrkiVest@nblzone-242-23.nblnetworks.fi] has quit [Quit: .] 20160920 09:50:17-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 240 seconds] 20160920 10:00:16-!- Appleman1234 [~Appleman1@KD119104054143.au-net.ne.jp] has joined #wesnoth-dev 20160920 10:07:19-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160920 10:12:38< irker644> wesnoth: Ignacio R. Morelle wesnoth:master f2efa155c90c / changelog src/gui/dialogs/preferences_dialog.cpp: gui2/tpreferences: Restore combobox adv. preferences option descriptions https://github.com/wesnoth/wesnoth/commit/f2efa155c90c036613ff2c834f06bc12133425ff 20160920 10:14:25< shadowm> Updated my PR again. 20160920 10:25:39< vultraz> huh 20160920 10:25:48< vultraz> I didn't realize that was an issue 20160920 10:27:44< vultraz> oh, yeah 20160920 10:27:49< vultraz> I remember why i didn't add that 20160920 10:27:54< vultraz> the framework hadn't been added to dropdown 20160920 10:30:08< irker644> wesnoth: Charles Dang wesnoth:master 96a66dc37c28 / data/gui/window/drop_down_list.cfg: Dropdown List: fixed grow factor for name column https://github.com/wesnoth/wesnoth/commit/96a66dc37c281abd5c1dcb072fa088e1d3a32532 20160920 10:35:05< loonycyborg> shadowm: I'll keep that stuff in mind, though I got flu atm, not in any mood to do anything productive 20160920 10:36:13< vultraz> shadowm: see my comment about add_row 20160920 10:41:53-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has joined #wesnoth-dev 20160920 10:42:12-!- ToBeCloud [uid51591@wikimedia/ToBeFree] has joined #wesnoth-dev 20160920 10:49:23-!- travis-ci [~travis-ci@ec2-54-205-121-205.compute-1.amazonaws.com] has joined #wesnoth-dev 20160920 10:49:24< travis-ci> wesnoth/wesnoth#11103 (master - f2efa15 : Ignacio R. Morelle): The build has errored. 20160920 10:49:24< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/161284588 20160920 10:49:24-!- travis-ci [~travis-ci@ec2-54-205-121-205.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160920 10:52:31-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has quit [Quit: wedge009] 20160920 10:52:52-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has joined #wesnoth-dev 20160920 10:53:49-!- wedge010 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has joined #wesnoth-dev 20160920 10:57:05-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has quit [Ping timeout: 250 seconds] 20160920 10:57:05-!- wedge010 is now known as wedge009 20160920 11:01:15-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20160920 11:19:17-!- JyrkiVesterinen [~JyrkiVest@nblzone-242-23.nblnetworks.fi] has joined #wesnoth-dev 20160920 11:26:46-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160920 11:34:21-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 11:39:00-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 265 seconds] 20160920 11:43:40-!- boucman_work [~boucman@209.57.66.86.rev.sfr.net] has quit [Ping timeout: 255 seconds] 20160920 11:46:37-!- gfgtdf [~chatzilla@x50ab6c61.dyn.telefonica.de] has joined #wesnoth-dev 20160920 12:04:42< irker644> wesnoth: Charles Dang wesnoth:master ad0a9768b903 / / (3 files in 2 dirs): MP Staging: wired in more functionality https://github.com/wesnoth/wesnoth/commit/ad0a9768b903a275fdc09b556728588f98b6f5e5 20160920 12:05:19< vultraz> gfgtdf: ok all the setter widgets should work now, I think ^ 20160920 12:06:08< gfgtdf> vultraz: liek settign gold income etc? 20160920 12:07:09< vultraz> yes 20160920 12:09:30-!- Kwandulin [~Miranda@p200300760F2C71F10C67A2200E6A32DF.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20160920 12:13:18< vultraz> gfgtdf: do you plan to work on the chatbox/userlist or should i see if i can deal with that? 20160920 12:13:53< gfgtdf> vultraz: hmm feel free to do it 20160920 12:14:04< vultraz> ok ill see what i can do 20160920 12:16:49-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has quit [Ping timeout: 250 seconds] 20160920 12:18:52-!- boucman_work [~boucman@180.16.90.92.rev.sfr.net] has joined #wesnoth-dev 20160920 12:21:12-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Quit: So long and thanks for all the fish.] 20160920 12:22:50< vultraz> blagh.. 20160920 12:23:33-!- boucman_work [~boucman@180.16.90.92.rev.sfr.net] has quit [Ping timeout: 265 seconds] 20160920 12:23:37< vultraz> i can pass the lobby_info pointer from enter_lobby_mode, but then that leaves start_local_game without a lobby_info object.. 20160920 12:23:57< vultraz> I guess I need to make lobby_info take pointers for the second and third arguments 20160920 12:23:59< vultraz> and pass null 20160920 12:24:03< vultraz> er.. 20160920 12:24:05< vultraz> hm.. 20160920 12:24:20< vultraz> idk if we need installed addons if we're not in the lobby 20160920 12:28:40< gfgtdf> hmm i dont think so, the insteeed addons are needed for whne you enter a game to check whther you have all rewuired addons 20160920 12:35:54< matthiaskrgr> I managed to build \o/ 20160920 12:36:08< matthiaskrgr> apparently export CXXFLAGS does not work but CXXFLAGS=.. cmake .. does :| 20160920 12:44:24-!- JyrkiVesterinen [~JyrkiVest@nblzone-242-23.nblnetworks.fi] has quit [Quit: .] 20160920 12:45:28-!- ToBeCloud [uid51591@wikimedia/ToBeFree] has quit [Quit: Connection closed for inactivity] 20160920 12:45:51-!- travis-ci [~travis-ci@ec2-54-235-33-108.compute-1.amazonaws.com] has joined #wesnoth-dev 20160920 12:45:52< travis-ci> wesnoth/wesnoth#11106 (master - ad0a976 : Charles Dang): The build has errored. 20160920 12:45:53< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/161306226 20160920 12:45:53-!- travis-ci [~travis-ci@ec2-54-235-33-108.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160920 12:56:28< matthiaskrgr> mmh, anyone tried "fuzzing" the engine with invalid map data yet? :P 20160920 13:06:57-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20160920 13:08:52-!- boucman_work [~boucman@167.20.90.92.rev.sfr.net] has joined #wesnoth-dev 20160920 13:14:49-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has joined #wesnoth-dev 20160920 13:17:38< mattsc> I’m done with tunnel functionality testing. Everything seems to work as expected for both human and AI controlled sides. 20160920 13:17:54< mattsc> I’m going to merge PR 790 shortly then. 20160920 13:24:54< matthiaskrgr> yay! I managed to reproduce that canvas size error thing from yesterday 20160920 13:25:57< mattsc> nice 20160920 13:35:05-!- Appleman1234 [~Appleman1@KD119104054143.au-net.ne.jp] has quit [Ping timeout: 240 seconds] 20160920 13:42:36< vultraz> matthiaskrgr: under what circumstances? 20160920 13:43:17< vultraz> ah,y ou filed a bug 20160920 13:44:50< matthiaskrgr> just low resolution, I guess 20160920 13:47:03< vultraz> odd.. 20160920 13:47:36< vultraz> though from your bug report it seems you were under minimum resolution? 20160920 13:47:47< vultraz> or, hm 20160920 13:47:51< vultraz> no, you couldn't be :/ 20160920 13:50:12< mattsc> vultraz: okay, on your comment to the PR. 20160920 13:50:47< mattsc> If you have no other comments, I’m going to merge it now. 20160920 13:51:02< vultraz> no objections 20160920 13:51:05-!- Kwandulin [~Miranda@p200300760F2C71F1E1573EF6E4B7CCB6.dip0.t-ipconnect.de] has joined #wesnoth-dev 20160920 13:51:31< mattsc> Cool. 20160920 13:51:49 * mattsc is going to push a big green button 20160920 13:52:11< irker644> wesnoth: mattsc wesnoth:master ae19588a37ce / src/pathfind/ (pathfind.cpp teleport.cpp teleport.hpp): Tunnels: fix vision not being propagated through tunnels https://github.com/wesnoth/wesnoth/commit/ae19588a37ce901a03ad17cefb6b2664209e7e2d 20160920 13:52:14< irker644> wesnoth: mattsc wesnoth:master f6016500705e / src/pathfind/ (teleport.cpp teleport.hpp): [tunnel] tag: add new optional parameter allow_vision=yes/no https://github.com/wesnoth/wesnoth/commit/f6016500705e4aac15327db1e1a996490bf54427 20160920 13:52:16< irker644> wesnoth: mattsc wesnoth:master f13123648eea / src/ (actions/move.cpp pathfind/teleport.cpp): Tunnels: fix issues when exit hex is occupied by invisible unit https://github.com/wesnoth/wesnoth/commit/f13123648eea920ac18f3a955a58ae7c0e5d2e5a 20160920 13:52:17< irker644> wesnoth: mattsc wesnoth:master aae3b6713261 / src/pathfind/teleport.cpp: Fix indenting https://github.com/wesnoth/wesnoth/commit/aae3b6713261715b6a4672e4487b693b17ff2ea8 20160920 13:52:19< irker644> wesnoth: mattsc wesnoth:master 09248c7deae8 / src/ (4 files in 2 dirs): Merge pull request #790 from wesnoth/fix-tunnel-issues https://github.com/wesnoth/wesnoth/commit/09248c7deae83673aac4dc8e980cf8824028b6d9 20160920 13:52:21-!- Appleman1234 [~Appleman1@KD119104054143.au-net.ne.jp] has joined #wesnoth-dev 20160920 13:52:29< mattsc> Two green buttons, actually. 20160920 14:07:25< mattsc> Still need to do changelog and release notes ... 20160920 14:07:36< DeFender1031> yay tunnels! 20160920 14:09:17< vultraz> blagh 20160920 14:09:33< vultraz> ok, so wesnothd_connection is only used in 3 places in lobby_info.. 20160920 14:10:25< vultraz> and only if an error occurs.. 20160920 14:10:50< vultraz> ok, so I think that call should be left to the caller 20160920 14:11:31< matthiaskrgr> how is this seed in the map editor supposed to work (generating random maps) 20160920 14:11:37< matthiaskrgr> I get different maps for identical seeds 20160920 14:11:50< vultraz> huh 20160920 14:11:51< vultraz> weird 20160920 14:12:18< matthiaskrgr> yes :P 20160920 14:12:32< vultraz> likely it also takes settings into account 20160920 14:12:52< matthiaskrgr> I only changed the seed 20160920 14:13:23< vultraz> meh 20160920 14:16:39-!- boucman_work [~boucman@167.20.90.92.rev.sfr.net] has quit [Ping timeout: 265 seconds] 20160920 14:16:48-!- horrowind [~Icedove@2a02:810a:8380:10a8:21b:fcff:fee3:c3ff] has joined #wesnoth-dev 20160920 14:21:33-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20160920 14:21:34< vultraz> oh come onnn 20160920 14:22:11< vultraz> ok, so the chatbox relied on the lobby_info wesnothd_conntection member.. 20160920 14:22:27-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160920 14:23:21< matthiaskrgr> buffer overflow \o/ 20160920 14:23:29< matthiaskrgr> somewhere in the editor 20160920 14:24:23< vultraz> ok, guess I'll add a wesnothd connection pointer to the chatbox.. 20160920 14:24:47< vultraz> except in local games, you don't need a wesnothd connection... 20160920 14:25:05-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Read error: Connection reset by peer] 20160920 14:25:09< vultraz> but will the chat even work without one.. 20160920 14:25:27-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160920 14:25:33< vultraz> I mean, help commands are already broken .. 20160920 14:26:38< mattsc> vultraz: okay if I push updates to changelog and release notes right now? 20160920 14:26:43< vultraz> yes 20160920 14:28:17< irker644> wesnoth: mattsc wesnoth:master c90294215a8d / RELEASE_NOTES changelog: Update changelog and release notes with new tunnel functionality https://github.com/wesnoth/wesnoth/commit/c90294215a8dbd5142eb856ac06ddff0f0971463 20160920 14:30:41-!- travis-ci [~travis-ci@ec2-54-80-22-93.compute-1.amazonaws.com] has joined #wesnoth-dev 20160920 14:30:42< travis-ci> wesnoth/wesnoth#11107 (master - 09248c7 : mattsc): The build passed. 20160920 14:30:42< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/161333980 20160920 14:30:42-!- travis-ci [~travis-ci@ec2-54-80-22-93.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160920 14:32:33-!- boucman_work [~boucman@229.202.154.77.rev.sfr.net] has joined #wesnoth-dev 20160920 14:45:20-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20160920 14:46:41< vultraz> \ o / 20160920 14:50:15< irker644> wesnoth: Charles Dang wesnoth:master dcc34fc32867 / src/ (6 files in 3 dirs): Refactored twesnothd_connection member out of lobby_info https://github.com/wesnoth/wesnoth/commit/dcc34fc3286788990b1c173663482f334be28034 20160920 14:50:18< irker644> wesnoth: Charles Dang wesnoth:master dc69c7f6c1b8 / src/game_initialization/multiplayer.cpp: Pass the lobby_info reference around like a hot potato https://github.com/wesnoth/wesnoth/commit/dc69c7f6c1b81b20785c13b67ab63d280213b2af 20160920 14:50:21< irker644> wesnoth: Charles Dang wesnoth:master 828d82c1ad5d / src/ (3 files in 2 dirs): MP Staging: enable chatbox https://github.com/wesnoth/wesnoth/commit/828d82c1ad5ddc41ef8e63d54083258b9f7e1256 20160920 14:50:25< vultraz> gfgtdf: ^ 20160920 14:51:16< vultraz> gfgtdf: btw can you look into why commands (idk if all commands but ik '/help' is affected) don't work with the chatbox anymore after it was made a widget 20160920 14:51:44< irker644> wesnoth: mattsc wesnoth:master aecf8ab7bc8d / src/ai/actions.cpp: Demote AI error message to warning and soften text https://github.com/wesnoth/wesnoth/commit/aecf8ab7bc8df889ef8c3b613ba6ff44841c0a6f 20160920 14:51:55< mattsc> tad_: ^ 20160920 14:53:05< vultraz> the mattsc bugfix train rolls on 20160920 14:53:38< mattsc> :) 20160920 14:53:47-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has quit [Ping timeout: 265 seconds] 20160920 14:54:05< mattsc> This wasn’t really a bug per se, but the train is about to come to a screeching halt, so I figure I better get done what I can before that happens. 20160920 15:05:53-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160920 15:08:22-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Quit: mattsc] 20160920 15:09:21-!- travis-ci [~travis-ci@ec2-54-80-22-93.compute-1.amazonaws.com] has joined #wesnoth-dev 20160920 15:09:22< travis-ci> wesnoth/wesnoth#11108 (master - c902942 : mattsc): The build passed. 20160920 15:09:22< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/161344987 20160920 15:09:22-!- travis-ci [~travis-ci@ec2-54-80-22-93.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160920 15:15:35-!- DeFender1031 [~DeFender1@89-139-252-125.bb.netvision.net.il] has quit [Quit: I'm not back now.] 20160920 15:17:17-!- DeFender1031 [~DeFender1@89-139-252-125.bb.netvision.net.il] has joined #wesnoth-dev 20160920 15:23:42< matthiaskrgr> is there some way to test the addon server with the dev version (git) ? 20160920 15:28:36< vultraz> test how? 20160920 15:29:45< matthiaskrgr> it wouldn't show any addons I think 20160920 15:30:08< matthiaskrgr> (currently compiling, can't access binary yet) 20160920 15:31:51-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20160920 15:32:07< zookeeper> i think you need to append the right port number to the server address... 20160920 15:32:11< zookeeper> not that i recall what they were 20160920 15:33:46< matthiaskrgr> mrh 20160920 15:33:48-!- mkdroid [~null@unaffiliated/matthiaskrgr] has joined #wesnoth-dev 20160920 15:34:01-!- mkdroid [~null@unaffiliated/matthiaskrgr] has quit [Client Quit] 20160920 15:34:21-!- travis-ci [~travis-ci@ec2-54-80-22-93.compute-1.amazonaws.com] has joined #wesnoth-dev 20160920 15:34:22< travis-ci> wesnoth/wesnoth#11109 (master - 828d82c : Charles Dang): The build was broken. 20160920 15:34:22< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/161351343 20160920 15:34:22-!- travis-ci [~travis-ci@ec2-54-80-22-93.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160920 15:35:12< vultraz> offf course :) 20160920 15:37:04-!- Bonobo [~Bonobo@2001:44b8:254:3200:518f:2181:8434:3ec] has quit [Quit: Leaving] 20160920 15:48:41-!- boucman_work [~boucman@229.202.154.77.rev.sfr.net] has quit [Ping timeout: 240 seconds] 20160920 15:49:18< irker644> wesnoth: Charles Dang wesnoth:master 5fead23a3296 / src/tests/gui/test_gui2.cpp: Fixup tests https://github.com/wesnoth/wesnoth/commit/5fead23a3296e74146551d8a71a257b757460817 20160920 15:51:39-!- horrowind [~Icedove@2a02:810a:8380:10a8:21b:fcff:fee3:c3ff] has quit [Quit: horrowind] 20160920 15:57:26-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 15:59:32< vultraz> uhh 20160920 15:59:33< vultraz> hmm 20160920 15:59:51< vultraz> theuserlist stuff seems to be tightly integrated with the gamelist thing 20160920 16:04:47-!- travis-ci [~travis-ci@ec2-54-92-227-54.compute-1.amazonaws.com] has joined #wesnoth-dev 20160920 16:04:48< travis-ci> wesnoth/wesnoth#11110 (master - aecf8ab : mattsc): The build has errored. 20160920 16:04:48< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/161351677 20160920 16:04:48-!- travis-ci [~travis-ci@ec2-54-92-227-54.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160920 16:05:36-!- boucman_work [~boucman@103.204.154.77.rev.sfr.net] has joined #wesnoth-dev 20160920 16:07:01< irker644> wesnoth: Charles Dang wesnoth:master 42cb2afae536 / data/gui/window/mp_staging.cfg: MP Staging: layout tweaks https://github.com/wesnoth/wesnoth/commit/42cb2afae5360af0090b90b507c88825cbb53dfb 20160920 16:10:00-!- boucman_work [~boucman@103.204.154.77.rev.sfr.net] has quit [Ping timeout: 260 seconds] 20160920 16:12:14-!- mkdroid [~null@unaffiliated/matthiaskrgr] has joined #wesnoth-dev 20160920 16:31:17-!- travis-ci [~travis-ci@ec2-54-80-22-93.compute-1.amazonaws.com] has joined #wesnoth-dev 20160920 16:31:18< travis-ci> wesnoth/wesnoth#11111 (master - 5fead23 : Charles Dang): The build was fixed. 20160920 16:31:19< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/161367606 20160920 16:31:19-!- travis-ci [~travis-ci@ec2-54-80-22-93.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160920 16:41:52-!- ChipmunkV [~vova@static-89-94-113-91.axione.abo.bbox.fr] has joined #wesnoth-dev 20160920 16:48:18-!- hk238 [~kvirc@unaffiliated/hk238] has joined #wesnoth-dev 20160920 16:54:39-!- celticminstrel [~celmin@unaffiliated/celticminstrel] has joined #wesnoth-dev 20160920 16:59:08< celticminstrel> shadowm: Yes, the children of /Volumes are generally directories whose name is the volume label. Possibly there could be some symbolic links (like the startup volume might be a symbolic link to / ). 20160920 17:02:31-!- mordante [~mordante@2001:984:5786:1:7a24:afff:fe8c:dea8] has joined #wesnoth-dev 20160920 17:02:31-!- mordante [~mordante@2001:984:5786:1:7a24:afff:fe8c:dea8] has quit [Changing host] 20160920 17:02:31-!- mordante [~mordante@wesnoth/developer/mordante] has joined #wesnoth-dev 20160920 17:02:44< mordante> servus 20160920 17:03:05< vultraz> hello 20160920 17:03:48< mordante> hi vultraz 20160920 17:04:04< vultraz> had any chance to look into the end credits thing? 20160920 17:04:38-!- travis-ci [~travis-ci@ec2-54-80-22-93.compute-1.amazonaws.com] has joined #wesnoth-dev 20160920 17:04:39< travis-ci> wesnoth/wesnoth#11112 (master - 42cb2af : Charles Dang): The build passed. 20160920 17:04:39< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/161372433 20160920 17:04:39-!- travis-ci [~travis-ci@ec2-54-80-22-93.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160920 17:04:55< celticminstrel> What was the end credits thing, again? 20160920 17:05:11< vultraz> ... the label not showing up if the credits were too long? 20160920 17:05:18< celticminstrel> Oh, right. 20160920 17:05:23< vultraz> gfgtdf said he also noticed the same thing in the lua console if it got too long 20160920 17:05:39< celticminstrel> Really? o.o 20160920 17:05:46< celticminstrel> I'm amazed he managed to get it that long. 20160920 17:05:57< celticminstrel> I'm sure it's also the reason why the inspector was paged. 20160920 17:07:26-!- boucman [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20160920 17:07:27-!- boucman [~rosen@wesnoth/developer/boucman] has quit [Remote host closed the connection] 20160920 17:11:49< irker644> wesnoth: Charles Dang wesnoth:master b264ed0626c1 / images/icons/ (icon-female.png icon-male.png icon-random.png): Added gender and random icons https://github.com/wesnoth/wesnoth/commit/b264ed0626c1915a11fdd67eee44dccf9645477a 20160920 17:15:10< vultraz> ugh, so.. 20160920 17:15:55< celticminstrel> Blargh, should I make this wesnoth.is_fogged or team:is_fogged... 20160920 17:15:59< vultraz> lobby_info::process_gamelist is passed a config.. 20160920 17:16:16< vultraz> it contains a [gamelist] child with [game] tags 20160920 17:16:22< vultraz> and [user] tags.. 20160920 17:16:26< vultraz> I want the user tags.. 20160920 17:16:46< celticminstrel> Sounds like you know what you're doing. 20160920 17:16:53-!- JyrkiVesterinen [~JyrkiVest@87-100-139-1.bb.dnainternet.fi] has joined #wesnoth-dev 20160920 17:16:54< vultraz> not really 20160920 17:17:02-!- mkdroid [~null@unaffiliated/matthiaskrgr] has quit [Quit: I'll be back!] 20160920 17:17:07< vultraz> in the lobby, that data is pulled directly from the server :/ 20160920 17:17:50< vultraz> if it receives a new gamelist, it processes it.. 20160920 17:18:32< vultraz> so how in hell do I get a list of users for a local game 20160920 17:18:58< vultraz> and it needs to be compatible with the online method 20160920 17:19:20< celticminstrel> Isn't the only user in a local game the local user? 20160920 17:19:48< vultraz> well, yes 20160920 17:19:54< vultraz> but I don't want the dialog to distinguish 20160920 17:20:03< vultraz> I want it to simply get a list of user 20160920 17:20:05< vultraz> s 20160920 17:20:47< vultraz> hmm 20160920 17:20:54< vultraz> ok so process_userlist()... 20160920 17:20:56< celticminstrel> So you already know how to do it for an online game? 20160920 17:21:04< vultraz> no :/ 20160920 17:21:09< celticminstrel> Oh. 20160920 17:21:19< vultraz> the user stuff is too closely coupled with the gamelist stuff in lobby_info 20160920 17:21:44< vultraz> lobby_info is basically the new equivalent of the master class multipler::ui 20160920 17:21:49< vultraz> multiplayer* 20160920 17:21:57< vultraz> master gui1 class* 20160920 17:22:01< celticminstrel> I kinda doubt that. 20160920 17:22:07< vultraz> but it was written with the lobby alone in mind :/ 20160920 17:22:09< vultraz> so we have problems 20160920 17:22:30< celticminstrel> Doesn't it have getters for the game list? 20160920 17:23:04< vultraz> so process_userlist seems to assume every user is in a game.. 20160920 17:23:17< vultraz> which, yes 20160920 17:23:24< vultraz> the user should be considered in-game here.. 20160920 17:23:38 * vultraz wishes we were using anura's always-on-server model >_> 20160920 17:23:58< celticminstrel> Pretty sure that's not the issue here. 20160920 17:24:08< vultraz> so if [user] has a game_id = key... 20160920 17:24:50 * vultraz groans 20160920 17:25:05< vultraz> I don't *think* that's something the server generates 20160920 17:25:08< vultraz> if so I'm fucked 20160920 17:26:09< celticminstrel> I don't know why you're looking at the process_* functions. 20160920 17:26:45< celticminstrel> Those would be the setter functions, basically. 20160920 17:26:58< vultraz> the gui1 versions functions with the same format.. 20160920 17:27:13< vultraz> but again, though process_network calls.. 20160920 17:27:27< celticminstrel> The question is, where do the process_* functions store this data? 20160920 17:28:00< vultraz> but where does it GET the data 20160920 17:28:09< celticminstrel> From the server, of course. 20160920 17:28:24< vultraz> but how does it get it for a local game! 20160920 17:28:41< celticminstrel> Why would it exist for a local game? 20160920 17:29:11< vultraz> oh, you're right 20160920 17:29:22< vultraz> gui1 does NOT show the current player in a local game 20160920 17:29:24< vultraz> :/ 20160920 17:30:06< celticminstrel> I don't really think it needs to, and if you disagree it's probably easy to add a special case. 20160920 17:30:52< zookeeper> the UI in credits screen is incredibly laggy. pressing up or down doesn't do anything for several seconds, and the close button doesn't seem to be reacting 20160920 17:31:14< celticminstrel> Huh. 20160920 17:31:20< celticminstrel> It was fine when I tried it. 20160920 17:31:23< vultraz> this is why not having an always-on-server is bad. if we did, the server would then present a single [user] for a local game 20160920 17:31:49< celticminstrel> I don't think that's really why not having an always-on-server is bad. 20160920 17:31:57< zookeeper> also as a very minor detail i think the arrow directions are confusing because i'd expect the keys to work more like scrolling, as in pressing down takes me down the list faster... :p 20160920 17:32:26< celticminstrel> Well, we could easily change that, but I think the current way is how the GUI1 version worked. 20160920 17:32:29< vultraz> the general point is such a model would mean there's never any difference between online/offline handling 20160920 17:33:37< celticminstrel> Sure, it's a nice ideal, but it's not that hard to make things work regardless. 20160920 17:33:47< vultraz> we wouldn't have to throw twesnothd_connection pointers either around since all data would be parsed by the gameserver. 20160920 17:34:09< celticminstrel> Not sure why that prevents the need for throwing twesnothd_connection pointers around. 20160920 17:34:52-!- Kwandulin [~Miranda@p200300760F2C71F1E1573EF6E4B7CCB6.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20160920 17:35:25< vultraz> because all data would pass through the gameserver 20160920 17:35:40< celticminstrel> Not sure why that prevents the need for throwing twesnothd_connection pointers around. 20160920 17:37:29< vultraz> because you wouldn't need them to call send_data. 20160920 17:37:47< vultraz> anyway, ok, it looks like my code works in online mode 20160920 17:37:48< vultraz> i appear as a user 20160920 17:37:51< celticminstrel> Why not? 20160920 17:37:58< vultraz> but now, how do i deal with other people coming in.. 20160920 17:41:21< vultraz> celticminstrel: i haven't worked out how it would work in a wesnoth context 20160920 17:42:15< irker644> wesnoth: Jyrki Vesterinen wesnoth:master 740acecfa568 / projectfiles/VC12/ (wesnoth.vcxproj wesnoth.vcxproj.filters): Update Visual Studio project https://github.com/wesnoth/wesnoth/commit/740acecfa568dc0ab6c1a5d53f4f6937adf6b705 20160920 17:43:39< vultraz> hm.. 20160920 17:43:47< vultraz> really, how does this dialog process changes.. 20160920 17:43:56< vultraz> timer, i do not want to use :/ 20160920 17:45:11< vultraz> seriously, how did this work.. 20160920 17:45:44< vultraz> what is actually polling the changes and updating things 20160920 17:45:51< celticminstrel> It looks like Boost.Asio allows you to set a callback to run when data is received. 20160920 17:46:01< vultraz> oh? 20160920 17:46:03< vultraz> tell me more 20160920 17:46:15< celticminstrel> I don't know if the people who implemented the Boost.Asio stuff actually made use of that. 20160920 17:46:25< celticminstrel> But it's a thing that exists, apparently. 20160920 17:46:30< vultraz> loonycyborg would know 20160920 17:46:50< vultraz> what is this function? 20160920 17:47:36< celticminstrel> Seems to be passed to boost::asio::async_read or async_write. 20160920 17:47:50< celticminstrel> So probably doesn't directly help you here. 20160920 17:48:31< celticminstrel> Since the boost::asio connection is encapsulated within twesnoth_connection. 20160920 17:48:34< celticminstrel> ^+d 20160920 17:48:43-!- hk238 [~kvirc@unaffiliated/hk238] has quit [Quit: http://www.kvirc.net/ 4.9.2 Aria] 20160920 17:48:55< loonycyborg> celticminstrel: I implemented all servers in callbacks, in fully async way 20160920 17:48:59< celticminstrel> BTW vultraz, should we drop all the t prefixes right after 1.13.6? 20160920 17:49:06< vultraz> sure 20160920 17:49:34< celticminstrel> loonycyborg, vultraz: I think what's needed here might be more like a callback that's called by the callback. 20160920 17:49:56< vultraz> yeah.. 20160920 17:50:07< vultraz> looks like async_read already has a handle_handshake callbak 20160920 17:50:44< vultraz> which calls.. recv... which calls async_read again?? 20160920 17:50:47< vultraz> blah 20160920 17:50:59< vultraz> loonycyborg's assistance is required 20160920 17:51:18< celticminstrel> Why are you looking at handle_handshake? That's too early in the connection. 20160920 17:51:36< vultraz> hm 20160920 17:51:39< celticminstrel> Handshake means getting the connection established. 20160920 17:51:41< vultraz> that calls handle_read 20160920 17:53:05< vultraz> but im still really curious how the old dialogs handled processing the network changes 20160920 17:53:29< vultraz> because I can't seem to find anything to that effect 20160920 17:53:58< celticminstrel> Have you looked in multiplayer_ui? 20160920 17:54:15< vultraz> yes 20160920 17:54:50< vultraz> all seems to come down to process_network() 20160920 17:54:52< celticminstrel> I think at the top of the file is the multiplayer event loop function. 20160920 17:54:53< vultraz> which is called from.. 20160920 17:54:59< vultraz> mp::run_lobby_loop 20160920 17:55:01< vultraz> :/ 20160920 17:55:03< celticminstrel> Yeah that 20160920 17:55:17< celticminstrel> In other words, it was using synchronous IO. 20160920 17:55:26< celticminstrel> Probably. 20160920 17:55:35< vultraz> which is called from.. 20160920 17:55:49< vultraz> all the enter_*_mode functions :/ 20160920 17:56:09< vultraz> well this won't do 20160920 17:56:16< celticminstrel> What won't do? 20160920 17:56:32< vultraz> we kinda need something different for the gui2 dialogs 20160920 17:56:39< vultraz> the lobby already uses a polling timer 20160920 17:56:39< celticminstrel> Obviously. 20160920 17:57:09< vultraz> but I'd really like the ability to set a callback in twesnothd_connection that will fire a provided function when new data is recieved 20160920 17:57:15< celticminstrel> loonycyborg: ^ 20160920 17:57:29< celticminstrel> Presumably a function that takes a config, right? 20160920 17:57:48< vultraz> presumably 20160920 17:58:11< vultraz> granted, for the lobby there is the eventual possibility that 20160920 17:58:14< vultraz> if the lobby gets really busy 20160920 17:58:23< vultraz> the dialog will be so busy updating you won't be able to select a game :P 20160920 17:58:49< celticminstrel> Does boost::asio::async_read start a new thread? 20160920 17:59:01< vultraz> you're asking me? :/ 20160920 17:59:04< celticminstrel> No. 20160920 17:59:20< vultraz> gonna get some sleep 20160920 17:59:25< gfgtdf> celticminstrel: afaik it uses theads intenally but it designe so that wou usualyl dont have to deal with them. 20160920 17:59:27< vultraz> will see what loonycyborg says tomorow 20160920 18:00:01< celticminstrel> gfgtdf: Uhhh... but if your callback accesses things in the main thread, surely you'd still have to worry about synchronization? 20160920 18:00:44< gfgtdf> celticminstrel: no, the main threads call poll() which then executes the callbacks in the main thread, the other threads are internal by boost asio to wait for network data. 20160920 18:01:27< celticminstrel> gfgtdf: Wait so even if you set a callback it's up to you to poll() so that it gets called? :| 20160920 18:02:06< gfgtdf> celticminstrel: well you can also call poll/run forma another thread. 20160920 18:02:19< celticminstrel> :| 20160920 18:02:28< gfgtdf> celticminstrel: liek make a new thread, let it call connection::run and all callbacks will be executed on that thread 20160920 18:03:03< celticminstrel> :| 20160920 18:03:09-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 276 seconds] 20160920 18:03:29-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 18:03:37-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160920 18:04:05< gfgtdf> are there any disadvatages of how its on in the lobby ? 20160920 18:04:21< vultraz> timer polling? 20160920 18:04:26< gfgtdf> vultraz: so ? 20160920 18:04:49< celticminstrel> I think it makes more sense to act when the data comes in, not X minutes later. 20160920 18:04:53< celticminstrel> ^seconds 20160920 18:04:54< gfgtdf> mordante: there was a bugreport related to gui2 timers, that when the application closes teh callbak migth still be executed but the static imers obect alreay be destroyed 20160920 18:05:47< gfgtdf> celticminstrel: you sureley dont want to deal te the issue that come from updating the gui from a second thread, so i dont realyl see what you alternative is 20160920 18:05:56< gfgtdf> celticminstrel: and in dont think that delay is noticable 20160920 18:06:03< vultraz> 4 seconds 20160920 18:06:06< vultraz> the timer is 20160920 18:06:26< gfgtdf> vultraz: well then why dont make it 1 second ? 20160920 18:06:29< celticminstrel> It's not that hard to synchronize correctly... 20160920 18:06:40< vultraz> but it also means it's constantly running if no data is coming in 20160920 18:06:58< celticminstrel> Though I guess if data was arriving in a constant stream there could be trouble. 20160920 18:07:47< vultraz> also true 20160920 18:08:32< gfgtdf> note that the loadingsceen does exactly the same, it has a timer whihc polls 'current_stage_' and then updats the gui codingly 20160920 18:09:17< gfgtdf> accoringly* 20160920 18:10:04< celticminstrel> Why is this [message] not showing. :| 20160920 18:11:21< irker644> wesnoth: Jyrki Vesterinen wesnoth:expose-preferences-to-lua 701b1896707d / / (8 files in 4 dirs): Expose preferences to Lua https://github.com/wesnoth/wesnoth/commit/701b1896707d09971b44fca90b341179c9da6e82 20160920 18:11:23< irker644> wesnoth: Jyrki Vesterinen wesnoth:expose-preferences-to-lua b2c427f6a691 / / (3 files in 2 dirs): Restrict preference access to plugins https://github.com/wesnoth/wesnoth/commit/b2c427f6a691738da8e25b7b68eff879c34746d2 20160920 18:11:25< irker644> wesnoth: Jyrki Vesterinen wesnoth:expose-preferences-to-lua 460270baaf7d / src/ (preferences.cpp preferences.hpp scripting/lua_preferences.cpp): Address feedback https://github.com/wesnoth/wesnoth/commit/460270baaf7d587ebe13ec7ab5b9684c81eba968 20160920 18:12:00< vultraz> ok I think I understand what the issue is in tgroup.. 20160920 18:13:27< irker644> wesnoth: Charles Dang wesnoth:master 0bbcd4055eaa / src/gui/widgets/group.hpp: Uncomment re-selection guard in tgroup::set_member_active https://github.com/wesnoth/wesnoth/commit/0bbcd4055eaa6eb63c72941ad6cef8c09347e666 20160920 18:13:33< vultraz> ok, that fixes the flg dialog 20160920 18:14:05< irker644> wesnoth: Jyrki Vesterinen wesnoth:enable-gui2-lobby-in-gui2-lobby-test 110c036dd032 / host-gui2.lua host.lua join-gui2.lua join.lua: Enable the GUI2 lobby in the GUI2 lobby test https://github.com/wesnoth/wesnoth/commit/110c036dd03270f835beac399fcd2b860a203fb5 20160920 18:14:07< irker644> wesnoth: Jyrki Vesterinen wesnoth:enable-gui2-lobby-in-gui2-lobby-test e738bde69000 / .travis.yml: Turn on GUI2 multiplayer tests in Travis CI https://github.com/wesnoth/wesnoth/commit/e738bde6900013fb246b14d53a266d56b780250f 20160920 18:14:09< irker644> wesnoth: Jyrki Vesterinen wesnoth:enable-gui2-lobby-in-gui2-lobby-test 314bf497728c / utils/travis/mp_test_executor-gui2.sh: Mark mp_test_executor-gui2.sh as executable https://github.com/wesnoth/wesnoth/commit/314bf497728cceaad1922571bbfc800ba3b994c4 20160920 18:14:19< gfgtdf> which dialog? 20160920 18:14:36< vultraz> faction select 20160920 18:14:49< vultraz> but now there are problems again in Create Unit.. 20160920 18:15:15< vultraz> celticminstrel: what order is a map iterated over in? 20160920 18:15:43< celticminstrel> If it's a tree map (std::map), it's iterated in sorted order. 20160920 18:15:59< celticminstrel> If it's a hash map (std::unordered_map), it's iterated in unspecified order. 20160920 18:16:05< vultraz> what is the sorted order? 20160920 18:16:15< celticminstrel> That depends on the key_type. 20160920 18:16:33< vultraz> I see.. 20160920 18:17:31< vultraz> hm actually, this is odd.. 20160920 18:17:47< vultraz> the issues i had previously with that code uncommented don't seem to be here.. 20160920 18:18:04< vultraz> though i did just see a case with no selected gender... 20160920 18:18:10< vultraz> but i can't repro that now.. 20160920 18:18:37< vultraz> wait, just did 20160920 18:19:12< vultraz> so, Male only selected -> female only selected.. 20160920 18:19:17< vultraz> female is not selected 20160920 18:19:48< vultraz> female and male possible, female selected... select another with both, male selected.. 20160920 18:20:07< vultraz> in the flg dialog 20160920 18:20:15< vultraz> if a map is done by sorted order.. 20160920 18:20:40< vultraz> ok that explains why in the button order of Random, Male, Female, Male gets selected if Female is not 20160920 18:20:45< vultraz> available 20160920 18:21:42-!- tad_ [add94167@gateway/web/freenode/ip.173.217.65.103] has joined #wesnoth-dev 20160920 18:21:54< vultraz> but what if it's just Male, Female 20160920 18:22:05< vultraz> female comes first alphabetically 20160920 18:22:28< vultraz> but tgroup is specialized with unit::GENDER or something in Unit Create 20160920 18:22:35< vultraz> and std::string in the flg dialog 20160920 18:22:40< vultraz> enum and strin 20160920 18:22:53< vultraz> the order type of a enum would be numerical order, right? 20160920 18:23:28< JyrkiVesterinen> Yes, enums are ordered by underlying numbers. 20160920 18:23:32< vultraz> ya know, I might have been better off with a vector for tgroup :/ 20160920 18:24:11< vultraz> the visual expectation would be iterating over the group members as they appear on the screen 20160920 18:24:28< vultraz> and that could be achieved by pushing back widgets to the vector in that order 20160920 18:24:48< celticminstrel> vultraz: What is the key_type again? 20160920 18:24:57< vultraz> what? 20160920 18:24:58< celticminstrel> The string? 20160920 18:25:02< vultraz> [05:22:25] vultraz but tgroup is specialized with unit::GENDER or something in Unit Create 20160920 18:25:03< celticminstrel> What was the key in the map? 20160920 18:25:04< vultraz> [05:22:31] vultraz and std::string in the flg dialog 20160920 18:25:30< vultraz> T 20160920 18:25:33< celticminstrel> Okay. 20160920 18:25:44< celticminstrel> So why not specialize it with unit::GENDER in the flg dialog? 20160920 18:26:01< vultraz> because that does not include "random" 20160920 18:26:09< celticminstrel> Ah. 20160920 18:26:42< vultraz> so basically i have no way to control the order if the group storage in a map 20160920 18:26:43< celticminstrel> You could use unit_race::NUM_GENDERS to represent random, I suppose. >_> 20160920 18:26:47< vultraz> :/ 20160920 18:28:24< celticminstrel> Okay so it seems like [message] does not work at all in my build for some reason... 20160920 18:28:37< vultraz> but pushing back members to a vector in a code-layout-specified order that should be synced with any changes to the layout of widgets in the dialog is equally bad 20160920 18:30:23< vultraz> so i need to find a good way to *sort* the widgets... 20160920 18:30:39< vultraz> perhaps i should return it to tselectable_*, T... 20160920 18:30:47< vultraz> use the widget ids to sort .. 20160920 18:31:01< vultraz> or i could do that this way, actually 20160920 18:31:18< vultraz> does std::sort work on a map? 20160920 18:31:20< celticminstrel> Note that a map would effectively be arbitrary (unspecified) order. 20160920 18:31:25< celticminstrel> Of course not? 20160920 18:31:31< vultraz> blah 20160920 18:31:36< vultraz> is there any way to sort a map ? 20160920 18:31:43< celticminstrel> Yes. Add elements to it. :P 20160920 18:32:10< vultraz> yeah, I think i need a vector back 20160920 18:32:14< celticminstrel> If you want to sort it in a different order you'd have to set a different comparator, which I'm pretty sure can only be done at construction time. 20160920 18:32:56< vultraz> damn 20160920 18:33:01< vultraz> i put work into making it a map! 20160920 18:33:08< vultraz> i guess i didn't fully consider the implications 20160920 18:33:17< celticminstrel> It makes sense for it to be a map. 20160920 18:33:19< DeFender1031> celticminstrel, it is theoretically possible to create a custom map which allows dynamic updating of its comparator 20160920 18:33:34< celticminstrel> Well yes, of course. 20160920 18:33:35< vultraz> celticminstrel: ... then how do you propose i deal with this problem 20160920 18:33:47< celticminstrel> It's also possible to create a custom map which preserves insertion order. 20160920 18:33:54< celticminstrel> (Java has one built-in.) 20160920 18:34:08< DeFender1031> celticminstrel, php arrays work like that too 20160920 18:34:11< celticminstrel> (It's called LinkedHashMap but I'm not sure how it really works.) 20160920 18:34:38< vultraz> that being that the uncertain order of the map does not match the layout of widgets on-screen and this can sometimes result in options notbeing selected 20160920 18:34:41< celticminstrel> I would not be surprised if Boost has this somewhere... 20160920 18:35:26< vultraz> boost multiindex? 20160920 18:35:40< vultraz> blah, ill deal with this tomorrow 20160920 18:35:58< celticminstrel> MultiIndex feels like overkill... :| 20160920 18:36:06< celticminstrel> But I guess it's a possibility to consider. 20160920 18:38:08< celticminstrel> Looks like a LinkedHashMap could be conceived of as a std::list plus a std::map::iterator>. 20160920 18:38:38< celticminstrel> Maybe unordered_map instead of map. 20160920 18:38:41< mordante> gfgtdf, do you have a link to the report? 20160920 18:40:02< gfgtdf> mordante: i think its was one of those form this report https://www.mail-archive.com/wesnoth-bugs@gna.org/msg26682.html 20160920 18:40:06< gfgtdf> mordante: not sure though 20160920 18:40:25< gfgtdf> mordante: in the attached log at the bottom 20160920 18:40:41-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20160920 18:43:26< zookeeper> JyrkiVesterinen, by plugins do you mean add-ons? 20160920 18:43:36< celticminstrel> No. 20160920 18:43:54< celticminstrel> Plugins are Lua scripts that run as a coroutine. 20160920 18:44:02< zookeeper> right, okay 20160920 18:44:08< celticminstrel> They're currently only used for the MP tests. 20160920 18:44:18< celticminstrel> But in theory they could be used to create MP server bots. 20160920 18:44:25< celticminstrel> Which do useful things. 20160920 18:46:00< matthiaskrgr> Caught general exception: basic_string::_M_create 20160920 18:46:02< matthiaskrgr> wut...? 20160920 18:46:39< celticminstrel> That string does not appear anywhere in the Wesnoth source. 20160920 18:46:56< celticminstrel> So that is indeed quite weird. 20160920 18:47:04< matthiaskrgr> boost maybe? 20160920 18:47:08< celticminstrel> Maybe? 20160920 18:47:20-!- tad_ [add94167@gateway/web/freenode/ip.173.217.65.103] has quit [Quit: Page closed] 20160920 18:51:21-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 18:52:26< matthiaskrgr> why are there overflows everywhere >:/ 20160920 18:52:50< celticminstrel> matthiaskrgr: Huh? 20160920 18:53:08< matthiaskrgr> well, not everywhere, but here and there 20160920 18:53:14< celticminstrel> gfgtdf: Is there any reason not to move the preload scripts and toplevel lua tags to game_lua_kernel::load_game? 20160920 18:53:19< matthiaskrgr> just found another one in the editor 20160920 18:53:33< celticminstrel> matthiaskrgr: What do you mean by overflows? 20160920 18:53:36< gfgtdf> celticminstrel: yes 20160920 18:53:48< matthiaskrgr> celticminstrel: address sanitizer crashes with heap buffer overflow 20160920 18:53:52< celticminstrel> Ah. 20160920 18:54:05< gfgtdf> celticminstrel: wwe want to run those scipts before for exmaple units are created 20160920 18:54:12< celticminstrel> Nice that someone's running it with address sanitizer. 20160920 18:54:23< celticminstrel> gfgtdf: The problem is that those scripts need the video object. 20160920 18:54:30< matthiaskrgr> celticminstrel: feels like I am the first one to do so 20160920 18:54:33< matthiaskrgr> ;( 20160920 18:54:39< celticminstrel> matthiaskrgr: Wouldn't surprise me :( 20160920 18:54:50< gfgtdf> celticminstrel: 1) why do theey need it and 2) what is the prpblem about it ? 20160920 18:54:51< matthiaskrgr> :< 20160920 18:55:15< celticminstrel> gfgtdf: Because some scenarios call dialogs from toplevel [lua] tags. 20160920 18:55:41-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 260 seconds] 20160920 18:55:42< gfgtdf> celticminstrel: we don't need to s upport for that i'd say. 20160920 18:55:48< celticminstrel> Incorrect. 20160920 18:56:03< celticminstrel> Existing addons do it, therefore we need to support it. 20160920 18:56:22< gfgtdf> celticminstrel: mostlikeley those addons wont break if those dialogs arent shown 20160920 18:56:33< celticminstrel> I wouldn't be so sure of that. 20160920 18:58:02< celticminstrel> Anyway, in my view, the dialogs not showing counts as breakage in itself. 20160920 18:58:31< celticminstrel> So moving the code like I said does fix the issue, but I'm not sure if there are other less desirable consequences. 20160920 18:58:48< gfgtdf> celticminstrel: liek i said that code need to run before untis are created 20160920 18:58:52< celticminstrel> Why? 20160920 18:58:59< gfgtdf> celticminstrel: otherside lua effects wont work on those units 20160920 18:59:09< celticminstrel> Hmm, that makes sense. 20160920 18:59:25< celticminstrel> But that means we need to pass the CVideo object to the game_state. :( 20160920 18:59:33< celticminstrel> I don't like that... 20160920 18:59:43-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160920 19:00:01< gfgtdf> celticminstrel: can you give an example of an addon that uses dialog in topelevel lua for smthign else than debug mesage or error messges ? 20160920 19:00:23< celticminstrel> For that you'll need to ask someone else, maybe vultraz or shadowm 20160920 19:02:01< vultraz> gfgtdf: toplevel lua? 20160920 19:02:13< gfgtdf> vultraz: yes 20160920 19:02:13< celticminstrel> [scenario][lua] 20160920 19:02:24< vultraz> i dont use that 20160920 19:02:32< celticminstrel> (Or even [lua] outside [scenario]) 20160920 19:02:39< mordante> matthiaskrgr, what did you use to create the logs of bug 25086? 20160920 19:02:42< celticminstrel> vultraz: The question is do you know an addon that does? 20160920 19:02:55< vultraz> i do use lua outside [scenario] 20160920 19:03:13< vultraz> in _main.cfg 20160920 19:03:26< vultraz> which loads dialogs but does not call them. 20160920 19:03:29< vultraz> show( 20160920 19:03:56< vultraz> the only dialog i show in pre-preshow is a warning about version compatibility 20160920 19:04:14< matthiaskrgr> mordante: CXXFLAGS="-fsanitize=address,undefined -g3 -0g -fno-omit-frame-pointer -march=native" cmake .. 20160920 19:04:25< matthiaskrgr> basically; address and undefined behaviour sanitizer 20160920 19:04:42< celticminstrel> gfgtdf: Where exactly are units initialized? 20160920 19:05:02< mordante> matthiaskrgr, ok thanks, which compiler? 20160920 19:05:05< matthiaskrgr> they are great tools and can unearth all sorts of things (and are usually faster than valgrind) 20160920 19:05:06< mordante> gcc or clang? 20160920 19:05:08< matthiaskrgr> mordante: gcc 20160920 19:05:08< matthiaskrgr> and clang 20160920 19:05:32< mordante> haven't found time to play with these tools, but maybe I should 20160920 19:05:32< celticminstrel> I think maybe someone should try running the thread sanitizer too. 20160920 19:05:40< mordante> I tend to use valgrind a lot 20160920 19:05:43< matthiaskrgr> mordante: definitely! ;) 20160920 19:06:30-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 19:06:45< matthiaskrgr> address sanitizer is usually a lot faster than valgrind 20160920 19:08:07< mordante> I've read about them, but at the time I didn't have that version of clang later tested on a 32-bit system and the tools didn't start 20160920 19:08:11< celticminstrel> Oh, I see. 20160920 19:08:33< matthiaskrgr> mh 20160920 19:09:10< mordante> gfgtdf, matthiaskrgr can't look at it today I ran into other bugs :-( 20160920 19:09:15< matthiaskrgr> I can usually at least do 32 bit build using ASAN and UBSAN and they work fine on my 64 bit system 20160920 19:09:25< celticminstrel> "TODO: this constructs units (in dismiss undo action) but resources:: are not available yet, so we might want to move the initialization of undo_stack_ to game_state::init" :? 20160920 19:09:42< gfgtdf> celticminstrel: in game_state.cpp shoty befpre [lua] scipts are run 20160920 19:09:48< gfgtdf> celticminstrel: after* 20160920 19:10:11< celticminstrel> gfgtdf: Is it really in the undo_stack_ initialization? 20160920 19:10:23< matthiaskrgr> mordante: what OS are you on? 20160920 19:10:31< gfgtdf> celticminstrel: that doesnt contruct the map units 20160920 19:10:38< celticminstrel> Ah, so where is it then? 20160920 19:10:38< mordante> matthiaskrgr, Debian stable 20160920 19:10:41< gfgtdf> celticminstrel: the undo_stack entry can contain unit objects 20160920 19:10:42< matthiaskrgr> oh 20160920 19:10:54< gfgtdf> celticminstrel: for dismiss undo entries 20160920 19:10:56< mordante> but I tested them ages ago and kind of forgotten about them 20160920 19:11:22< mordante> was an ancient version so could be it runs perfectly now 20160920 19:11:37< celticminstrel> gfgtdf: So where are the map units constructed? 20160920 19:11:51< matthiaskrgr> it says gcc has asan from 4.8 20160920 19:11:52< mordante> clang has come a long way 20160920 19:12:35< matthiaskrgr> debian jessie has 4.9, good 20160920 19:12:37< gfgtdf> game_stae.cpp calls team_build.cpp 20160920 19:12:42< gfgtdf> builder* 20160920 19:13:16< mordante> jup I have 4.9.2 20160920 19:13:20< celticminstrel> Okay, so this appears to be in game_state::init? 20160920 19:13:36< mordante> will definitely play with the sanitisers again 20160920 19:13:57< celticminstrel> gfgtdf: So, in that case, I wonder why you decided to move the lua kernel construction into the gamestate constructor? 20160920 19:14:07< celticminstrel> Since it was also constructed in init before. 20160920 19:14:11< mordante> I'm off now, bye 20160920 19:14:21< matthiaskrgr> the nice thing is you can apply regular compiler optimizations on top of the sanitizers so that the slowdown is not THAT bad actually, it might mess up stacktraces in some weird cases but if you find something odd, you can always do another unoptimized build and have a look there 20160920 19:14:26< matthiaskrgr> cu mordante 20160920 19:14:35< gfgtdf> celticminstrel: so that resources::lua_kernel can be set before unit are consturcted which happens in init 20160920 19:14:43-!- mordante [~mordante@wesnoth/developer/mordante] has quit [Quit: Leaving] 20160920 19:15:08< celticminstrel> gfgtdf: So is there a reason not to set resources::lua_kernel in init? 20160920 19:15:48< gfgtdf> celticminstrel: maybe you can do that, i just did it there becasue all the other reources are also set in play_controller 20160920 19:16:09< celticminstrel> For that matter, why do we actually need resources::lua_kernel... 20160920 19:17:21< celticminstrel> Also, does it really make sense to store the lua_kernel in the game_state? 20160920 19:23:32-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Quit: So long and thanks for all the fish.] 20160920 19:29:01-!- ancestral [~ancestral@75-168-189-115.mpls.qwest.net] has joined #wesnoth-dev 20160920 19:34:24< JyrkiVesterinen> I'm investigating the combat simulation hang/assert ( https://github.com/GregoryLundberg/wesnoth/issues/38 ). 20160920 19:34:56< JyrkiVesterinen> It happens when a fight is simulated for a 1) slowed unit that 2) can level up after the fight 3) using Monte Carlo simulation. 20160920 19:35:38< JyrkiVesterinen> In the save file tad_ provided, that unit is the Wolf Rider called Grol. 20160920 19:36:19< JyrkiVesterinen> I'll look a bit closer. It's not yet clear to me why the problem doesn't occur with default damage calculation. 20160920 19:43:49< shadowm> celticminstrel: So what happens if two volumes have the same label? 20160920 19:45:32< celticminstrel> Uhh... good question! I think there's a way to find out. 20160920 19:47:31 * celticminstrel mounts the same disk image twice and looks. 20160920 19:47:42< celticminstrel> (Well, technically a disk image and a copy of it.) 20160920 19:48:30< celticminstrel> shadowm: Okay, so in that case the Finder shows two volumes with the same label; however, from the Terminal it looks like one of them has a numeric suffix (preceded by a space). 20160920 19:50:09< JyrkiVesterinen> Ah. The problem with combat simulation is that prob_matrix::clear() is too thorough. 20160920 19:50:22< JyrkiVesterinen> It marks all rows and columns in the plane as unused. 20160920 19:50:39< JyrkiVesterinen> Code elsewhere assumes that at least one row/column is used. 20160920 19:50:57< JyrkiVesterinen> It results in memory corruption. 20160920 19:51:09< JyrkiVesterinen> This problem is easy to fix, let's try that... 20160920 19:57:28-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has joined #wesnoth-dev 20160920 20:06:49< matthiaskrgr> mh, how do I look at thesegui2 credits? 20160920 20:08:17< celticminstrel> Just click "Credits" at the titlescreen. 20160920 20:20:24< irker644> wesnoth: Jyrki Vesterinen wesnoth:master 9f379b96e342 / src/attack_prediction.cpp: Fix rare memory corruption in combat simulation https://github.com/wesnoth/wesnoth/commit/9f379b96e34236d087d1788add77698602dd78b9 20160920 20:22:44< matthiaskrgr> is it know that when I hover a checkbox, all map labels shine through the UI window? 20160920 20:23:33< JyrkiVesterinen> Yes. https://gna.org/bugs/?22176 20160920 20:24:00< JyrkiVesterinen> (It's assigned to me, I'll fix it eventually.) 20160920 20:24:08< matthiaskrgr> :> ok 20160920 20:30:29-!- JyrkiVesterinen [~JyrkiVest@87-100-139-1.bb.dnainternet.fi] has quit [Quit: Going to bed] 20160920 20:36:43 * shadowm runs the test suite on valgrind. 20160920 20:37:10< shadowm> ==14686== Invalid read of size 1 20160920 20:37:13< shadowm> Oh man. 20160920 20:38:17< shadowm> ==14686== at 0x89C63E: gui2::twindow::undraw() (window.cpp:886) 20160920 20:38:30< shadowm> if(restore_ && restorer_) { 20160920 20:38:42< shadowm> One is a bool and the other is a surface. 20160920 20:39:01< shadowm> How can that possibly go wrong? 20160920 20:39:32< shadowm> Unless `this` is wrong... 20160920 20:39:53< matthiaskrgr> how to run the testsuite? 20160920 20:40:14< shadowm> Did you build it? 20160920 20:40:20< matthiaskrgr> uhm, how? :D 20160920 20:40:27< matthiaskrgr> make test? 20160920 20:40:35< shadowm> I think at this particular point things went wrong already due to heap corruption. 20160920 20:40:42< shadowm> matthiaskrgr: CMake? 20160920 20:40:45< matthiaskrgr> yes 20160920 20:41:13< shadowm> -DENABLE_TESTS=ON or so in the cmake call? 20160920 20:41:38< shadowm> Yes, that's the one. 20160920 20:41:47< shadowm> The resulting executable is called `test`. 20160920 20:42:18< matthiaskrgr> ah yes, I found it in the wiki 20160920 20:43:04< shadowm> Following this is more invalid reads hinting at referencing freed memory. 20160920 20:43:19-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160920 20:43:29< matthiaskrgr> sounds like something ASAN could find, too ^^ 20160920 20:43:55< shadowm> http://pastebin.com/raw/jiHax0wp 20160920 20:47:03< matthiaskrgr> (compiling takes a bit though...) 20160920 20:48:19-!- gfgtdf [~chatzilla@x50ab6c61.dyn.telefonica.de] has quit [Read error: Connection reset by peer] 20160920 20:48:31< matthiaskrgr> it's rebuilding parts of the game :/ 20160920 20:52:09< shadowm> I don't understand the uninit value warning before the first invalid read. 20160920 20:52:35< shadowm> The t_string dtor does not explicitly mention anything at all. 20160920 20:52:49< shadowm> Is the t_string pointer itself that's not initialized? 20160920 20:53:16< shadowm> Oh, it's the shared_ptr member. 20160920 20:53:26< shadowm> Which... is always initialized. 20160920 20:53:40< shadowm> With a pointer to an unconditional heap allocation. 20160920 20:55:36< shadowm> The remaining frames are all in shared_ptr's implementation so I have no reason to believe that the payload object has uninitialized members itself... 20160920 20:55:38-!- gfgtdf [~chatzilla@x50ab6c61.dyn.telefonica.de] has joined #wesnoth-dev 20160920 20:58:57< shadowm> What... is this... 20160920 20:59:39< shadowm> gui/dialogs/tip.cpp:125 . I guess this has been around for years. 20160920 21:03:03< gfgtdf> matthiaskrgr: could you give more infromation on mapgen seed not working? it wokred fnine for me. 20160920 21:03:39< matthiaskrgr> well, I could enter the same string "bla" and it would always generate a different map 20160920 21:03:59< gfgtdf> matthiaskrgr: ok 20160920 21:04:01< matthiaskrgr> that's all I did, I think .. 20160920 21:04:04< gfgtdf> matthiaskrgr: the seed must be anumber 20160920 21:04:08< matthiaskrgr> oh!! 20160920 21:04:57< matthiaskrgr> well, it could implicitly convert the chars to digits and use these then :p 20160920 21:05:29< matthiaskrgr> but there was no message or whatever that I entered the wrong thing :/ 20160920 21:06:44< gfgtdf> matthiaskrgr: hmm yes we afaik have a similar problem also in other textboxes 20160920 21:11:04< shadowm> I give up. 20160920 21:11:29< shadowm> Hopefully you'll get more coherent information from the sanitizers. 20160920 21:11:42< matthiaskrgr> yes, I'll have a look 20160920 21:11:48< matthiaskrgr> I can create a ticket if it works :) 20160920 21:12:09< shadowm> But it's evident that there's something really wrong at work here involving a delete call. 20160920 21:12:44< shadowm> The test suite doesn't run any code that creates threads of its own, right? 20160920 21:14:43< shadowm> It seems there are two threads but perhaps one of them runs library code... 20160920 21:16:01< shadowm> Yeah, the second thread seems to only run SDL code. 20160920 21:16:49< shadowm> The really suspicious thing is that this only triggers on -O0 builds. :3 20160920 21:17:41< matthiaskrgr> hmm, at freedroid we had something like that too, some time ago 20160920 21:18:03-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Ping timeout: 240 seconds] 20160920 21:18:10< matthiaskrgr> but I'm doing a Og build so I might not get it :/ 20160920 21:18:42< shadowm> Well, maybe you will anyway? I guess I should rephrase that as "does not trigger with -O3 builds". 20160920 21:18:51< matthiaskrgr> :D 20160920 21:19:48< shadowm> And since certain people had the brilliant idea of trying to use threads in Wesnoth I'm paranoid about every timing-based bug like that. 20160920 21:20:02< celticminstrel> ...why does the tip object need to be static in the first place. 20160920 21:28:16< Aginor> 19:38 < celticminstrel> Does anyone happen to know how I convert SDL_Color to Uint32? 20160920 21:28:31< Aginor> celticminstrel: display.hpp has one, I think sdl/utilities have one as well. 20160920 21:28:36< celticminstrel> I already got it, thanks. :) 20160920 21:28:49< Aginor> celticminstrel: it's something that is best moved to sdl/utils 20160920 21:28:53< celticminstrel> And looks like I was right about it being in multiple places. :/ 20160920 21:29:20< Aginor> yes 20160920 21:29:33< celticminstrel> Personally I think that everything needing a color should use SDL_Color instead of Uint32. 20160920 21:29:48< celticminstrel> Except maybe image manipulation and rendering. 20160920 21:30:49< Aginor> we should typedef our own colour type, and have a proper construct for it 20160920 21:31:03< Aginor> which uses the same representation as our SDL_Color 20160920 21:31:20< Aginor> it all hinges on a bunch of assumptions at the moment ;) 20160920 21:31:42< Aginor> and it's spread out across the code, and there's no consistent masks or anything either 20160920 21:33:33-!- ChipmunkV [~vova@static-89-94-113-91.axione.abo.bbox.fr] has quit [Quit: ChipmunkV] 20160920 21:46:28-!- ChipmunkV [~vova@static-89-94-113-91.axione.abo.bbox.fr] has joined #wesnoth-dev 20160920 21:49:23< celticminstrel> Sure. 20160920 21:49:34< celticminstrel> Do you recommend doing the same for rects and points? 20160920 21:49:48< celticminstrel> I guess we do have tpoint in GUI2, but it's not universally used. 20160920 21:51:14-!- ancestral [~ancestral@75-168-189-115.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160920 21:54:07-!- celmin [~celticmin@unaffiliated/celticminstrel] has joined #wesnoth-dev 20160920 21:55:50-!- ancestral [~ancestral@75-168-189-115.mpls.qwest.net] has joined #wesnoth-dev 20160920 21:56:05< Aginor> yeah, getting our drawing primitives harmonised would be useful 20160920 21:58:40-!- celmin [~celticmin@unaffiliated/celticminstrel] has quit [Ping timeout: 265 seconds] 20160920 22:00:22< gfgtdf> Aginor: does pangocairo also has some color struct ? 20160920 22:01:01< Aginor> gfgtdf: yes, which is incompatible 20160920 22:01:08< Aginor> ARGB vs RGBA 20160920 22:01:27< Aginor> I started looking at it over the weekend how to make it "nicer" but I didn't have time to finish 20160920 22:01:59< Aginor> pangocairo also does premultiplied alpha which SDL doesn't handle very well, which is a big headache 20160920 22:02:24< Aginor> it relies on a custom-written blitting function at the moment, but we need to get rid of that one 20160920 22:02:27-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 22:03:18< matthiaskrgr> shadowm: "test" does not put out anything useful :( 20160920 22:03:22-!- ChipmunkV [~vova@static-89-94-113-91.axione.abo.bbox.fr] has quit [Quit: ChipmunkV] 20160920 22:03:26< matthiaskrgr> 20160921 00:03:05 error filesystem: Trying to open file with empty name. 20160920 22:03:29< matthiaskrgr> 20160921 00:03:05 error preprocessor: Could not open file 20160920 22:06:15-!- ancestral [~ancestral@75-168-189-115.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160920 22:08:23-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 265 seconds] 20160920 22:10:49-!- celmin [~celticmin@unaffiliated/celticminstrel] has joined #wesnoth-dev 20160920 22:11:20-!- tad_ [add94167@gateway/web/freenode/ip.173.217.65.103] has joined #wesnoth-dev 20160920 22:11:20-!- ancestral [~ancestral@75-168-189-115.mpls.qwest.net] has joined #wesnoth-dev 20160920 22:11:48-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has quit [Ping timeout: 250 seconds] 20160920 22:12:57< celmin> I actually have no idea who tekelili is. 20160920 22:18:12-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has joined #wesnoth-dev 20160920 22:19:48< celmin> I just noticed pull request 496. Is there some reason why this is not merged? 20160920 22:19:53< celmin> wedge009: ^ 20160920 22:20:00< celmin> vultraz: ^ 20160920 22:20:04< celmin> Maybe shadowm too 20160920 22:21:02< celmin> (I guess a straight merge would be problematic due to the changelog commit, though.) 20160920 22:21:18< celmin> (It would put the line in the 1.13.5 or lower changelog.) 20160920 22:22:37-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has quit [Ping timeout: 250 seconds] 20160920 22:24:06< tad_> I was looking at the PRs yesterday. That old one about zoom artifacts I thought might solve the artifacts I see. But it has a merge conflict. 20160920 22:24:52< tad_> Which makes me wonder if maybe some of the older ones should simply be closed if the person doesn't want to update them. 20160920 22:25:56< celmin> I think 536 maybe should be closed... 20160920 22:27:18< gfgtdf> shadowm: you know about the state of pr 616? specailyl about what prevents mreging ? 20160920 22:27:45< celmin> Looking at PR318, I get the impression that the merge conflict might be easily resolved. 20160920 22:27:54< celmin> But that's without actually trying it. 20160920 22:28:08< shadowm> celmin: I don't remember, so I deassigned myself. 20160920 22:28:10< tad_> The question is does the change there already solve the issue 20160920 22:28:28< celmin> My thought also stems partly from the fact that it looks like a fairly simple change. 20160920 22:28:28< shadowm> gfgtdf: Why would I know? 20160920 22:29:03< shadowm> matthiaskrgr: So no sanitizer errors? 20160920 22:29:23< matthiaskrgr> no 20160920 22:29:32< shadowm> Hmmm. :\ 20160920 22:29:35< celmin> gfgtdf: You should probably instead ask SigurdFireDragon and loonycyborg. 20160920 22:29:43< gfgtdf> shadowm: it in the discussion you said you wanted to merge it, so maybe you know. 20160920 22:29:55< matthiaskrgr> I could try a -O0 build but that would take another hour or one and a half :/ 20160920 22:29:55< tad_> I wanted to check and .. guess what .. I can't zoom at all. 20160920 22:30:03< matthiaskrgr> my laptop is not that fast 20160920 22:30:07< celmin> tad_: Huh? 20160920 22:30:11< shadowm> gfgtdf: What? No. This is 616, right? 20160920 22:30:26< shadowm> I'm not even listed in the participants list. 20160920 22:30:28< gfgtdf> shadowm: ah sry i meant 647 20160920 22:30:55< tad_> No zoom arrow. Click on the magnifier works. Flips from normal to 50% and back. That's all she wrote. 20160920 22:31:15< shadowm> gfgtdf: We had a very heated argument on IRC. I don't remember the conclusion. 20160920 22:32:49< tad_> celmin: Just re-checked. That's it: 100 or 50. No other zooms available. 20160920 22:34:16< gfgtdf> hm ok 20160920 22:37:04-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 22:37:29< shadowm> I'm looking at the logs. Apparently pydsigner was supposed to ask the community what they think about this. 20160920 22:38:19< shadowm> Either to the ML (which is full of apathetic lazy devs) or the forums (which is full of people who don't know what they are talking about most of the time). 20160920 22:38:51< shadowm> 20160609 06:01:32< shadowm> pydsigner: Coordinate with the communications guy (that's vultraz) to ask the forums maybe? 20160920 22:38:58< shadowm> 20160609 06:03:03< shadowm> pydsigner: As well as the ML, which I can't help but regard in disdain after being ignored on repeated occasions and also after suggesting someone to use it to discuss another add-ons server-related change earned me some bad blood from another developer. 20160920 22:39:24< irker644> wesnoth: gfgtdf wesnoth:master 4d0fbc1d4e52 / src/ (7 files in 2 dirs): attempt to fix UB in tree_view and unit drawer. https://github.com/wesnoth/wesnoth/commit/4d0fbc1d4e5246066e5f4fbb02a011a1f91ca8a2 20160920 22:39:27< shadowm> And nothing's happened ever since, so... yeah. 20160920 22:40:03< matthiaskrgr> oh, yay ! 20160920 22:40:59-!- Duthlet [~Duthlet@dslb-146-060-179-135.146.060.pools.vodafone-ip.de] has quit [Quit: leaving] 20160920 22:41:04 * celmin isn't quite sure what tad_ is talking about. 20160920 22:41:15< gfgtdf> matthiaskrgr: this^ shoudl fix some the ones mentioned in https://gna.org/bugs/?25086, coudl yu please test ? 20160920 22:41:37< matthiaskrgr> I have already launched the build ;) 20160920 22:49:24< matthiaskrgr> does the cmake DENABlE_TEST thing affect libwesnoth-game.a in any way? 20160920 22:53:12-!- wedge010 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has joined #wesnoth-dev 20160920 22:53:54< tad_> celmin: Under the minimap is a slider saying 100% with tick marks. IIRC 1.12.6 has a marker on it you can move to zoom. 20160920 22:54:41< tad_> celmin: Below is a mag glass icon to click to zoom or reset to 100%. Click it and zoom goes to 50% and cannot be changed. Click again to go back to 100%. 20160920 22:55:12-!- DeFender [~DeFender1@dsl217-132-173-106.bb.netvision.net.il] has joined #wesnoth-dev 20160920 22:56:03-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 240 seconds] 20160920 22:56:33-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has quit [Ping timeout: 240 seconds] 20160920 22:56:34-!- wedge010 is now known as wedge009 20160920 22:56:51< celmin> tad_: And this is on current master? 20160920 22:57:09-!- DeFender1031 [~DeFender1@89-139-252-125.bb.netvision.net.il] has quit [Ping timeout: 244 seconds] 20160920 22:57:21< tad_> celmin: Correct. As of a couple hours ago. 20160920 22:58:45< tad_> celmin: Just checked and 1.12.6 has a marker and sliding it does zoom in and out. 20160920 22:59:23< celmin> There might be hotkeys that can be used to zoom as well (working around the broken slider). 20160920 23:03:19< matthiaskrgr> gfgtdf: looks good :) 20160920 23:04:18< tad_> celmin: - and = ... and they do work. 20160920 23:05:52< matthiaskrgr> (it still hangs but the UB is gone) 20160920 23:06:37< matthiaskrgr> (except for this shifts, but I think it was stated these are not that important) 20160920 23:13:10-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has joined #wesnoth-dev 20160920 23:29:28-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160920 23:49:56-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160920 23:57:05-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has quit [Ping timeout: 250 seconds] 20160920 23:57:27-!- bumbadadabum [~bumbadada@wesnoth/developer/bumbadadabum] has joined #wesnoth-dev --- Log closed Wed Sep 21 00:00:06 2016