--- Log opened Wed Jun 04 00:00:36 2014 20140604 00:01:31-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20140604 00:01:34< gfgtdf> iceiceice_: maybe to store game_board::map() somewhere ? that pointer becomes invalid after the pointer swap 20140604 00:01:40< gfgtdf> s/to/you = 20140604 00:02:12< iceiceice_> oh hmm 20140604 00:02:47< iceiceice_> y i guess i need to refresh the resources 20140604 00:03:11< iceiceice_> i think its that resources::map doesn't update 20140604 00:03:21< gfgtdf> iceiceice_: but i thought you goit a boost px != 0 and not a segfault ? 20140604 00:03:37< iceiceice_> it was different on optimizations O2 and O0 20140604 00:03:41< iceiceice_> i got segfault in the debug build 20140604 00:03:49< iceiceice_> but it was assertions with the release build 20140604 00:04:00< gfgtdf> iceiceice_: hm 20140604 00:04:26< iceiceice_> im going to try swapping the pointers but refresh the resources:: pointer when the map is reset 20140604 00:04:29< gfgtdf> iceiceice_: y assertions are still "undefined bahaviour" 20140604 00:04:56< gfgtdf> iceiceice_: and you normal can be happy just to get teh correct error message :) 20140604 00:05:01< iceiceice_> ehe 20140604 00:05:05< gfgtdf> not segaults i mean 20140604 00:05:11< iceiceice_> horray unit tests :) 20140604 00:05:14< gfgtdf> s/assertions/segfaults 20140604 00:06:36< iceiceice_> hmm maybe resources::gamemap should actually be like a boost::function0 that points to resources::gameboard->map() 20140604 00:06:38< iceiceice_> hehe 20140604 00:07:16< iceiceice_> i guess that doesnt actually work 20140604 00:07:25< iceiceice_> ok i will just refresh the resource pointer i guess 20140604 00:08:16< iceiceice_> hmm... 20140604 00:12:06< irker321> wesnoth: Ignacio R. Morelle wesnoth:master c7d22b086f14 / projectfiles/CodeBlocks/wesnoth.cbp: CodeBlocks project update http://git.io/zRGQEw 20140604 00:12:11< iceiceice_> im just going to leave this all until later 20140604 00:12:16< iceiceice_> and do it the slow way for now 20140604 00:12:30< iceiceice_> this does not need to be high performance. 20140604 00:12:47< shadowm> Okay, 1.11.11 is the last version where utils::lowercase() works for me. 20140604 00:13:46-!- Spoffy [~chatzilla@82.199.155.15] has quit [Ping timeout: 265 seconds] 20140604 00:13:53< shadowm> However. 20140604 00:14:26< shadowm> I just made a Windows build and there utf8::lowercase() works. 20140604 00:15:04< shadowm> Time to file a bug, anyway. 20140604 00:18:12-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20140604 00:18:49< iceiceice_> wait so both of them are broken? 20140604 00:19:07< iceiceice_> but utf8::lowercase works on windows? 20140604 00:20:21< shadowm> Yes and yes. 20140604 00:20:40< shadowm> Hm, it just occurred to me that I've been building on Linux with clang. I wonder if gcc would make a difference... 20140604 00:25:49< shadowm> I don't know what I'd be doing without a quadcore machine. 20140604 00:26:57-!- ancestral [~ancestral@17.114.45.98] has quit [Quit: ancestral] 20140604 00:32:04< shadowm> Huh. 20140604 00:32:08< shadowm> gcc too. 20140604 00:32:37< shadowm> We really need a test case for this. 20140604 00:35:23< iceiceice_> y maybe you can auto bisect it 20140604 00:35:37< shadowm> How so? 20140604 00:36:07< iceiceice_> i thought that once you have an executable test script, 20140604 00:36:15< iceiceice_> you can pass it as an argument to git bisect 20140604 00:36:22< iceiceice_> and it will automate the binary search 20140604 00:36:31< shadowm> I didn't know that. 20140604 00:36:49< shadowm> But since the test suite was broken for several releases, it's probably a moot point. 20140604 00:37:26< shadowm> I _suppose_ I could patch the main() in every commit tested, though... 20140604 00:37:33< iceiceice_> hmm maybe 20140604 00:38:00< iceiceice_> yeah i have never done it... 20140604 00:38:10< iceiceice_> should figure out how though, might save time int he long run if we know how 20140604 00:41:54< shadowm> Bug: https://gna.org/bugs/index.php?22139 20140604 00:43:30< shadowm> AI0867: I know you had something to do with the unicode-aware functions recently, so you should probably take a look at this. ^ 20140604 00:47:29< gfgtdf> is wchar_t signed dor unsigned on linux ? 20140604 00:48:51-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Read error: Connection reset by peer] 20140604 00:48:53-!- vultraz_ [~chatzilla@124.109.10.167] has joined #wesnoth-dev 20140604 00:49:11-!- vultraz_ is now known as vultraz 20140604 00:49:13< iceiceice_> idk wikipedia says its compiler specific 20140604 00:49:47< shadowm> No effing idea. 20140604 00:50:01< iceiceice_> http://stackoverflow.com/questions/11953363/wchar-t-is-unsigned-or-signed 20140604 00:50:14-!- vultraz [~chatzilla@124.109.10.167] has quit [Changing host] 20140604 00:50:14-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20140604 00:50:58< iceiceice_> hmm maybe we need to write "unsigned wchar_t" ? 20140604 00:51:27< gfgtdf> well if it was unsigned then this line: uchar >= static_cast(std::numeric_limits::min()). might maybe not works because min() of a signed is cased to an unsigned. 20140604 00:51:49< gfgtdf> if it was signed* 20140604 00:53:22< iceiceice_> i think we should typedef something as "unsigned wchar_t" 20140604 00:53:29< iceiceice_> and use that typedef through out and see if it gets better 20140604 00:53:41< iceiceice_> seems like it couldnt hurt 20140604 00:54:10< gfgtdf> you want to typedef a C++ base typre? idk i never tried that 20140604 00:54:32< gfgtdf> ah ok it seems like you didnt chnt to change wchar_t 20140604 00:54:41< shadowm> How about I bisect it first? :p 20140604 00:54:55< iceiceice_> hehe knock yourself out shadowm 20140604 00:55:07< gfgtdf> iceiceice_: i have windows i cannot test 20140604 00:55:24< iceiceice_> hmm can you check if wchar_t is unsigned for windows thoug? 20140604 00:55:36< gfgtdf> iceiceice_: i think rmeovign teh test "uchar >= static_cast(std::numeric_limits::min()" is a good try 20140604 00:55:48< gfgtdf> iceiceice_: since on windows that test will always be true as min() is 0 20140604 00:55:52< gfgtdf> and bith are unsigned 20140604 00:55:55< gfgtdf> noth* 20140604 00:55:57< gfgtdf> both* 20140604 00:57:55< iceiceice_> hmm so whats the test case? 20140604 00:58:01< iceiceice_> i guess i shoudl make a unit test? 20140604 00:59:01< iceiceice_> hmm can i cast utf8::String to std::string, or compare with constants somehow? 20140604 00:59:07< iceiceice_> i guess i will find out 20140604 00:59:21< gfgtdf> shadowm: i presonly think rebuilding is annoying, rebuilding multiple times it more annoying, so bisection isn't part of my default bugfix toolset. But sure you ca do it. 20140604 00:59:43< shadowm> I'm not trying to fix a bug. 20140604 01:00:21< shadowm> I'm trying to find the culprit so I can decide what I'm dining tonight. 20140604 01:02:10< iceiceice_> hmm gfgtdf i think it fixed 20140604 01:02:21< iceiceice_> i am not getting an error here: 20140604 01:02:22< iceiceice_> BOOST_AUTO_TEST_CASE( test_lowercase ) 20140604 01:02:22< iceiceice_> { 20140604 01:02:22< iceiceice_> BOOST_CHECK_EQUAL ( utf8::lowercase("FOO") , "foo" ); 20140604 01:02:22< iceiceice_> } 20140604 01:02:31< iceiceice_> let me try undoing the fix and see if that woudl be broken 20140604 01:03:25< iceiceice_> y, gfgtdf your idea fixes that test case 20140604 01:03:40< iceiceice_> shadowm, im going to push to master, can you test? 20140604 01:03:52< iceiceice_> hmm err, maybe i'll just make a PR 20140604 01:04:05< shadowm> Yeah, you know. 20140604 01:04:12< shadowm> I'd like the person who introduced the bug to look at the fix too. 20140604 01:04:54 * shadowm is testing this git bisect run subcommand atm. 20140604 01:06:09< iceiceice_> https://github.com/wesnoth/wesnoth/pull/189 20140604 01:09:41< shadowm> I don't understand that commit. 20140604 01:09:58< shadowm> The commit doesn't explain itself either. 20140604 01:11:28< shadowm> OK, so first of all, I can't guarantee that I understood how to do bisect scripts right. 20140604 01:11:46< shadowm> That said: http://pastebin.com/h6WVjSah 20140604 01:12:39< shadowm> wesbot: seen aquileia 20140604 01:12:39< wesbot> shadowm: The person with the nick aquileia last spoke 1d 6h ago. 1d 5h ago they left with the message: Ping timeout: 240 seconds 20140604 01:13:30< shadowm> That was on 1.12. 20140604 01:13:58< iceiceice_> hmm wait so exactly what test is failing now? 20140604 01:14:07< iceiceice_> utf8::lowercase("FOO") == "foo" ? 20140604 01:14:17< iceiceice_> in your bisect? 20140604 01:14:43< shadowm> I didn't use unit tests, I had the bisect script patch the main() each time to exit with 1 or 0 depending on whether a simple check passed. 20140604 01:15:18< shadowm> exit(foo != utils::lowercase(foo) ? 0 : 1); // foo is "FOO" 20140604 01:16:15< shadowm> m, it seems my master was way behind yours. 20140604 01:16:16< iceiceice_> oh yours is base on utils::lowercase 20140604 01:16:24< shadowm> Yes, I said that was on 1.12. 20140604 01:16:27< iceiceice_> oh ok 20140604 01:16:47< iceiceice_> hmm well i think its possible gfgtdf fixed utf8::lowercase 20140604 01:16:55< iceiceice_> on master 20140604 01:17:04< shadowm> Is it also possible he broke it for some other case? 20140604 01:17:14< iceiceice_> gfgtdf? 20140604 01:17:28< iceiceice_> y i have no idea its just a trial commit 20140604 01:17:31< shadowm> All this Unicode stuff was purportedly broken on certain platforms to begin with, which prompted the fix that broke it for me. 20140604 01:17:48< gfgtdf> no i never tzouched teh string util cuntions 20140604 01:17:59< shadowm> This is why I'd like the original author to take a look at the new fix before doing anything else. 20140604 01:18:02< iceiceice_> when i say fixed, i mean int he 15 minutes since you reported the bug 20140604 01:18:10< iceiceice_> he suggested a change which i compiled and tested with a single test case... 20140604 01:18:31< gfgtdf> functions* 20140604 01:18:46< shadowm> gfgtdf: Yes, I know this fix just occurred to you and that this isn't your code... 20140604 01:19:20< shadowm> I'm just saying: is there a possibility that it breaks the code for some other scenario that was originally fixed with the version that broke for me? 20140604 01:19:21< iceiceice_> hmm my other PR is still asserting failures 20140604 01:19:43< shadowm> ('scenario' as in a situation, not Wesnoth scenarios.) 20140604 01:20:05< shadowm> That's why I want the original author to inspect it before committing. 20140604 01:20:09< iceiceice_> i wish that scons did not remember the build = parameter 20140604 01:20:18< iceiceice_> y im not suggesting to commit 20140604 01:20:28< iceiceice_> im just putting it up so someone can inspect and pull easily if desired 20140604 01:20:29< shadowm> It does indeed fix utf8::lowercase() for me. 20140604 01:20:47< iceiceice_> i think the fix was motiviated by the idea that wchar_t might be signed or unsigned 20140604 01:20:55< shadowm> Can this even be trivially backported to 1.12, though? I guess not. :( 20140604 01:21:43< gfgtdf> iceiceice_, shadowm: i dont see why 189 coudl brek any situation, there are 2 cases wchar_t is unsignd (for example windows) wchar_t is signed. In teh first case the chech is a not since it compares un unsigned >= 0. In teh seconds case it seems to be broken currently since it casts a negative number to an unsigned type. So i don't see the use of this line. 20140604 01:21:45< iceiceice_> idk if something like that is broken i think we have no choice but to backport 20140604 01:21:58< gfgtdf> s/not/nop 20140604 01:22:38< shadowm> Whether this will be backported or not isn't the question, the question is whether I can actually go and test a backported version right now. 20140604 01:22:52< shadowm> If the former were a question I would be really disappointed in myself. 20140604 01:24:11< iceiceice_> man this is super annoying 20140604 01:24:13< iceiceice_> gfgtdf: 20140604 01:24:17< iceiceice_> the version in the pr now 20140604 01:24:22< iceiceice_> works fine in debug build 20140604 01:24:29< iceiceice_> but assertion failure with optimizations on 20140604 01:24:34< shadowm> It seems I can. 20140604 01:24:37< gfgtdf> iceiceice_: i dont know about teh 1.12 version though 20140604 01:24:51< gfgtdf> iceiceice_: hmm 20140604 01:25:08< iceiceice_> the version *without* the scoped_ptr::swap 20140604 01:25:10< shadowm> Eh or maybe not. 20140604 01:25:34< gfgtdf> ah k i thought you said my fix causes assertion faulure 20140604 01:25:46< shadowm> http://pastebin.com/QVYAPwdn <-- no trivial backport for me. 20140604 01:26:20< shadowm> Oh, ucs4::char_t is ucs4char there I guess. 20140604 01:26:38< shadowm> Man, why are all the names different between 1.12 and master? 20140604 01:27:08< shadowm> Confirmed it also fixes it on 1.12. 20140604 01:28:13< shadowm> Now here's the big question: why does the campaignd build on baldras seem unaffected? :/ 20140604 01:29:07< shadowm> lrwxrwxrwx 1 wesnoth wesnoth 66 Mar 2 22:25 campaignd-1.12 -> ../builds/campaignd-1.12-git-1.11.11-4-g237a1a0/bin/campaignd-1.12 20140604 01:29:28-!- ancestral [~ancestral@12.23.74.29] has joined #wesnoth-dev 20140604 01:30:01< shadowm> Because it predates the culprit by about 85 commits. 20140604 01:30:19< gfgtdf> i go to sleep now 20140604 01:30:21-!- gfgtdf [~chatzilla@e177149032.adsl.alicedsl.de] has quit [Quit: ChatZilla 0.9.90.1 [Firefox 29.0.1/20140506152807]] 20140604 01:31:11< shadowm> Just noting, some wesnothd code also seems to use utils/utf8::lowercase, and that's actually been rebuilt and deployed several times since 1.11.11. 20140604 01:31:35< shadowm> Inclduing ban management code. 20140604 01:32:04< shadowm> Sounds pretty much like a severity = blocker+1 bug to me. 20140604 01:39:42< iceiceice_> :O 20140604 01:41:35< shadowm> Bans should still work, although mods would have to take care to always input the duration in lowercase. 20140604 01:42:07< shadowm> The name blacklist, however, should've become case-sensitive due to this bug. 20140604 01:42:31< shadowm> It's fortunate that this wasn't found after 1.12.0. ;) 20140604 01:59:54< iceiceice_> yeah, go us :) 20140604 02:14:25< shadowm> It's funny, now that I think about it. If campaignd didn't have a mixture of wildly different coding conventions that resulted in asymmetric case-insensitive checks (one operand is converted using tolower() directly, another using the utils/utf8 function) and I didn't implement ages ago a superfluous log message on the client side warning against server misbehavior that I considered ridiculously unlikely to ever happen... 20140604 02:14:36< shadowm> I wouldn't have come across this. 20140604 02:15:12< iceiceice_> yup, also if we had written unit tests it would all be good 20140604 02:15:27< iceiceice_> but anyways at least we caught it 20140604 02:16:09-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20140604 02:16:18< iceiceice_> i still cant figure out why i'm segfaulting :( 20140604 02:20:36-!- Ivanovic_ [~ivanovic@frnk-4d01674c.pool.mediaWays.net] has joined #wesnoth-dev 20140604 02:22:57-!- Ivanovic [~ivanovic@wesnoth/developer/ivanovic] has quit [Ping timeout: 240 seconds] 20140604 02:24:27-!- Ivanovic_ [~ivanovic@frnk-4d01674c.pool.mediaWays.net] has quit [Changing host] 20140604 02:24:28-!- Ivanovic_ [~ivanovic@wesnoth/developer/ivanovic] has joined #wesnoth-dev 20140604 02:24:44-!- Ivanovic_ is now known as Ivanovic 20140604 02:25:49-!- noy [~Noy@S01067cb21b205894.vs.shawcable.net] has joined #wesnoth-dev 20140604 02:25:56-!- noy [~Noy@S01067cb21b205894.vs.shawcable.net] has quit [Changing host] 20140604 02:25:56-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20140604 02:26:48-!- noy [~Noy@wesnoth/developer/noy] has quit [Client Quit] 20140604 02:29:05< iceiceice_> shadowm: 20140604 02:29:14< iceiceice_> i wonder if the utf stuff also has a hand in the dialogs crashing? 20140604 02:29:26< iceiceice_> there have been a bunch of wierd inspect dialog crashes 20140604 02:29:33< iceiceice_> maybe utf truncate is broken somehow or something 20140604 02:30:51< shadowm> It's a possibility, but that'd imply it diverged further between 1.12 and master than just the namespace and function names. 20140604 02:31:02< shadowm> And typedef names and symbol names in general. 20140604 02:31:25< iceiceice_> idk i think the commit you pointed out involved changes to dialog.cpp 20140604 02:31:33< iceiceice_> maybe i didnt follow you though 20140604 02:31:55< iceiceice_> is the utf8 stuff only on master? 20140604 02:31:55< shadowm> OTOH :inspect crashing because GUI2 occasionally fails to rebuild the dialog layout correctly isn't exactly new. It may just have been exarcebated by my rearrangement of the dialog contents earlier this cycle. 20140604 02:32:03< shadowm> No, it's on both branches. 20140604 02:32:48< shadowm> I'm not clear on the differences yet beyond the names. 20140604 02:55:18-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has quit [Ping timeout: 245 seconds] 20140604 03:02:00< iceiceice_> gfgtdf: i think its because gui has private poitners to most of unit_map, game map etc... 20140604 03:02:13< iceiceice_> i dont think its actually because of the copy constructor 20140604 03:02:29< iceiceice_> so... i guess this just has to wait until that is sortedout 20140604 03:03:12-!- ancestral [~ancestral@12.23.74.29] has quit [Quit: i go nstuf kthxbai] 20140604 03:29:31-!- iceiceice_ [~chris@207-237-132-91.ny.subnet.cable.rcn.com] has quit [Quit: Leaving] 20140604 03:29:47-!- vultraz_ [~chatzilla@124.109.10.167] has joined #wesnoth-dev 20140604 03:29:58-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Read error: Connection reset by peer] 20140604 03:30:05-!- vultraz_ is now known as vultraz 20140604 03:33:10-!- vultraz [~chatzilla@124.109.10.167] has quit [Changing host] 20140604 03:33:10-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20140604 03:41:24-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20140604 03:49:23-!- ancestral [~ancestral@12.23.74.29] has joined #wesnoth-dev 20140604 03:52:23-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20140604 03:59:14-!- Gambit [~derek@wesnoth/developer/grickit] has quit [Remote host closed the connection] 20140604 04:07:07-!- happygrue [~happygrue@wesnoth/developer/wintermute] has quit [Ping timeout: 240 seconds] 20140604 04:07:07-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20140604 04:10:22-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20140604 04:35:49-!- sachith500 [~kvirc@112.134.160.181] has joined #wesnoth-dev 20140604 04:35:50-!- sachith500 [~kvirc@112.134.160.181] has quit [Client Quit] 20140604 04:35:59-!- sachith500 [~kvirc@112.134.160.181] has joined #wesnoth-dev 20140604 04:36:10-!- sachith500|2 [~kvirc@112.134.160.181] has joined #wesnoth-dev 20140604 04:36:13-!- sachith500|2 [~kvirc@112.134.160.181] has quit [Client Quit] 20140604 04:40:39-!- noy [~Noy@wesnoth/developer/noy] has quit [Read error: Connection reset by peer] 20140604 04:55:21-!- wesbot changed the topic of #wesnoth-dev to: string+feature freeze active on 1.12 | 249 bugs, 345 feature requests, 29 patches | Logs: http://irclogs.wesnoth.org | Alternate logs: http://wesnoth.debian.net | Don't paste on IRC! Use a pastebin: http://pastebin.com | http://imagebin.org 20140604 04:55:55-!- cib [~cib@p5DC74680.dip0.t-ipconnect.de] has joined #wesnoth-dev 20140604 04:56:26-!- cib is now known as Guest56390 20140604 04:57:19-!- trademark_ [~trademark@nsg93-8-88-175-59-164.fbx.proxad.net] has joined #wesnoth-dev 20140604 04:58:01-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Quit: Computer's napping] 20140604 04:58:23-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20140604 05:03:15-!- Sulfur [~Miranda@p5B008472.dip0.t-ipconnect.de] has joined #wesnoth-dev 20140604 05:12:48-!- sachith500 [~kvirc@112.134.160.181] has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] 20140604 05:12:53-!- Guest56390 [~cib@p5DC74680.dip0.t-ipconnect.de] has quit [Ping timeout: 252 seconds] 20140604 05:13:18-!- Guest56390 [~cib@p5DC74680.dip0.t-ipconnect.de] has joined #wesnoth-dev 20140604 05:45:17-!- mjs-de [~mjs-de@f049072089.adsl.alicedsl.de] has joined #wesnoth-dev 20140604 05:54:31-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20140604 06:03:29-!- trademark_ [~trademark@nsg93-8-88-175-59-164.fbx.proxad.net] has quit [Ping timeout: 252 seconds] 20140604 06:07:04-!- Jetrel [~Jetrel@c-75-73-180-126.hsd1.mn.comcast.net] has joined #wesnoth-dev 20140604 06:10:05-!- Jetrel_ [~Jetrel@c-75-73-180-126.hsd1.mn.comcast.net] has quit [Ping timeout: 252 seconds] 20140604 06:13:21-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has quit [Ping timeout: 240 seconds] 20140604 06:13:54-!- Gallaecio [~quassel@84.120.115.132.dyn.user.ono.com] has quit [Quit: No Ping reply in 180 seconds.] 20140604 06:14:44-!- Gallaecio [~quassel@84.120.115.132.dyn.user.ono.com] has joined #wesnoth-dev 20140604 06:16:19-!- shadowm_desktop [ignacio@190.91.66.83] has joined #wesnoth-dev 20140604 06:16:35-!- shadowm_desktop is now known as Guest60442 20140604 06:33:58-!- Guest56390 [~cib@p5DC74680.dip0.t-ipconnect.de] has quit [Ping timeout: 240 seconds] 20140604 06:34:01-!- mjs-de [~mjs-de@f049072089.adsl.alicedsl.de] has quit [Ping timeout: 252 seconds] 20140604 06:39:16-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20140604 06:39:29-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Client Quit] 20140604 06:46:44-!- mjs-de [~mjs-de@vp-c-67.cs.uni-dortmund.de] has joined #wesnoth-dev 20140604 06:59:10-!- boucman_work [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20140604 07:04:08-!- ancestral [~ancestral@12.23.74.29] has quit [Quit: End Transmission.] 20140604 07:09:53< AI0867> 02:47 < gfgtdf> is wchar_t signed dor unsigned on linux ? ← it's 32 bits wide. As even the original (biggest) universal character set was only 31 bits wide, whether it's signed or not is unlikely to be relevant 20140604 07:10:06< AI0867> as for utf8::lowercase, aquileia implemented that 20140604 07:10:08< AI0867> shadowm: ^ 20140604 07:11:07< AI0867> or er, wait, no 20140604 07:11:28< AI0867> I changed the implementation somewhat, but that should only affect ancient versions of OS X and BSD 20140604 07:13:40< AI0867> see 6318b37ffd4035908eb529d493c390ee0e85e289 20140604 07:14:21< AI0867> ah, I see how signedness could affect that test 20140604 07:19:02-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Read error: Connection reset by peer] 20140604 07:19:45-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20140604 07:26:36-!- EdB [~edb@85.69.242.6] has joined #wesnoth-dev 20140604 07:27:11-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Ping timeout: 252 seconds] 20140604 07:28:13-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20140604 07:31:03-!- [Relic] [~relic@99-58-54-211.lightspeed.milwwi.sbcglobal.net] has quit [Quit: Leaving] 20140604 07:36:40-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20140604 08:08:57-!- ancestral [~ancestral@12.23.74.29] has joined #wesnoth-dev 20140604 08:17:30-!- EdB [~edb@85.69.242.6] has quit [Quit: Konversation terminated!] 20140604 08:24:20-!- haudegen_ [~quassel@178.115.128.144.wireless.dyn.drei.com] has joined #wesnoth-dev 20140604 08:25:40-!- haudegen_ is now known as haudegen 20140604 08:45:43-!- kex [~kex@93.143.101.220] has quit [Remote host closed the connection] 20140604 08:46:39< irker321> wesnoth: Alexander van Gessel wesnoth:master c73f236e55b1 / src/menu_events.cpp: Don't let :show_var create variables http://git.io/1ccCOA 20140604 08:47:01-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Ping timeout: 252 seconds] 20140604 08:47:03-!- Sulfur [~Miranda@p5B008472.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20140604 08:48:40-!- Netsplit *.net <-> *.split quits: esr, irker321, boucman_work, haudegen 20140604 08:48:51-!- esr [~esr@static-71-162-243-5.phlapa.fios.verizon.net] has joined #wesnoth-dev 20140604 08:48:51-!- esr [~esr@static-71-162-243-5.phlapa.fios.verizon.net] has quit [Changing host] 20140604 08:48:51-!- esr [~esr@wesnoth/developer/esr] has joined #wesnoth-dev 20140604 08:49:56-!- Netsplit over, joins: haudegen 20140604 08:50:11-!- Netsplit over, joins: boucman_work 20140604 08:55:21-!- Winter [~quassel@177.196.200.77.rev.sfr.net] has joined #wesnoth-dev 20140604 08:58:17-!- WinterD [~quassel@177.196.200.77.rev.sfr.net] has quit [Ping timeout: 255 seconds] 20140604 09:03:18-!- kex [~kex@212.92.210.53] has joined #wesnoth-dev 20140604 09:07:20-!- matthiaskrgr [matthiaskr@gateway/shell/panicbnc/x-fakvdxhslfxffwcu] has quit [Changing host] 20140604 09:07:20-!- matthiaskrgr [matthiaskr@unaffiliated/matthiaskrgr] has joined #wesnoth-dev 20140604 09:07:20-!- matthiaskrgr [matthiaskr@unaffiliated/matthiaskrgr] has quit [Changing host] 20140604 09:07:20-!- matthiaskrgr [matthiaskr@gateway/shell/panicbnc/x-fakvdxhslfxffwcu] has joined #wesnoth-dev 20140604 09:08:52-!- Sulfur [~Miranda@p5B008472.dip0.t-ipconnect.de] has joined #wesnoth-dev 20140604 09:09:38-!- haudegen [~quassel@178.115.128.144.wireless.dyn.drei.com] has quit [Quit: No Ping reply in 180 seconds.] 20140604 09:11:01-!- haudegen [~quassel@178.115.128.144.wireless.dyn.drei.com] has joined #wesnoth-dev 20140604 09:11:02-!- ancestral [~ancestral@12.23.74.29] has quit [Quit: End Transmission.] 20140604 09:11:20-!- mjs-de [~mjs-de@vp-c-67.cs.uni-dortmund.de] has quit [Ping timeout: 255 seconds] 20140604 09:12:13-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20140604 09:14:03-!- Guest60442 [ignacio@190.91.66.83] has quit [Ping timeout: 245 seconds] 20140604 09:22:48-!- mjs-de [~mjs-de@f049171049.adsl.alicedsl.de] has joined #wesnoth-dev 20140604 09:27:45-!- irker419 [~irker@fehu.ai0867.net] has joined #wesnoth-dev 20140604 09:27:45< irker419> wesnoth: Chris Beck wesnoth:master b6508091a23c / src/ (serialization/unicode.cpp tests/test_util.cpp): Fix utf8::lowercase (bug #22139) http://git.io/Haq9gg 20140604 09:29:22< AI0867> shadowm, iceiceice, gfgtdf: ^ 20140604 09:40:41< irker419> wesnoth: Chris Beck wesnoth:1.12 7cd9583bdd2f / src/ (serialization/string_utils.cpp tests/test_util.cpp): Fix utf8::lowercase (bug #22139) http://git.io/l3XQUw 20140604 09:46:38-!- haudegen [~quassel@178.115.128.144.wireless.dyn.drei.com] has quit [Quit: Weil sohalt.] 20140604 09:49:10-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140604 09:57:10-!- c74d [~c74d3a4eb@2002:4404:712c:0:76de:2bff:fed4:2766] has quit [Excess Flood] 20140604 10:00:51-!- c74d [~c74d3a4eb@2002:4404:712c:0:76de:2bff:fed4:2766] has joined #wesnoth-dev 20140604 10:29:40-!- haudegen_ [~quassel@85-126-180-242.volume.xdsl-line.inode.at] has joined #wesnoth-dev 20140604 10:35:00-!- mjs-de [~mjs-de@f049171049.adsl.alicedsl.de] has quit [Remote host closed the connection] 20140604 10:46:54-!- haudegen_ [~quassel@85-126-180-242.volume.xdsl-line.inode.at] has quit [Quit: Weil sohalt.] 20140604 10:47:12-!- haudegen_ [~quassel@85-126-180-242.volume.xdsl-line.inode.at] has joined #wesnoth-dev 20140604 10:55:21-!- wesbot changed the topic of #wesnoth-dev to: string+feature freeze active on 1.12 | 248 bugs, 345 feature requests, 29 patches | Logs: http://irclogs.wesnoth.org | Alternate logs: http://wesnoth.debian.net | Don't paste on IRC! Use a pastebin: http://pastebin.com | http://imagebin.org 20140604 11:00:16-!- haudegen_ is now known as Haudegen 20140604 11:05:30-!- Spoffy [~chatzilla@82.199.155.15] has joined #wesnoth-dev 20140604 11:42:44-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140604 11:43:00-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 265 seconds] 20140604 12:04:19-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20140604 12:28:52-!- Spoffy_ [~chatzilla@152.78.175.8] has joined #wesnoth-dev 20140604 12:30:53-!- Spoffy [~chatzilla@82.199.155.15] has quit [Ping timeout: 264 seconds] 20140604 12:31:01-!- Spoffy_ is now known as Spoffy 20140604 12:34:04-!- Necrosporus_ is now known as Necrosporus 20140604 12:40:44-!- irker419 [~irker@fehu.ai0867.net] has quit [Quit: transmission timeout] 20140604 12:47:34-!- Turuk_ [40399930@gateway/web/cgi-irc/kiwiirc.com/ip.64.57.153.48] has joined #wesnoth-dev 20140604 12:58:24-!- sachith500 [~kvirc@112.134.160.140] has joined #wesnoth-dev 20140604 13:05:37-!- EdB [~edb@85.69.242.6] has joined #wesnoth-dev 20140604 13:19:03-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20140604 13:24:50-!- Guest56390 [~cib@p5DC74680.dip0.t-ipconnect.de] has joined #wesnoth-dev 20140604 13:32:51-!- Winter [~quassel@177.196.200.77.rev.sfr.net] has quit [Killed (zelazny.freenode.net (Nickname regained by services))] 20140604 13:34:08-!- WinterD [~quassel@177.196.200.77.rev.sfr.net] has joined #wesnoth-dev 20140604 13:39:44-!- mjs-de [~mjs-de@f049171049.adsl.alicedsl.de] has joined #wesnoth-dev 20140604 13:41:15-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20140604 13:46:46-!- iceiceice [~chris@207-237-132-91.ny.subnet.cable.rcn.com] has joined #wesnoth-dev 20140604 13:53:50-!- prophile [~alynn@oftn/member/prophile] has joined #wesnoth-dev 20140604 14:01:29< iceiceice> gfgtdf: 20140604 14:01:32< iceiceice> i think this commit introduces a bug 20140604 14:01:33< iceiceice> https://github.com/wesnoth/wesnoth/commit/12f11740 20140604 14:02:30< iceiceice> it will cause network errors to crash the program and circumvent normal error handling 20140604 14:05:59< iceiceice> i think it will only affect mp games in linger mode... but its still not good and we should fix it 20140604 14:06:37< iceiceice> amybe will affect more, i would have to read more code to know 20140604 14:07:16< iceiceice> the problem is that, in playmp_controller::play_human_turn(), and related, 20140604 14:07:32< iceiceice> you have delegated responsibility to send data over the network to the "turn_info_sender" object, which does so in its destructor 20140604 14:07:36< iceiceice> calling network::send_data 20140604 14:07:41-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20140604 14:07:44< iceiceice> however, that is not a no throw function... 20140604 14:07:52< iceiceice> it throws exceptions on any network::error 20140604 14:08:45< iceiceice> and moreover, *most of the time* that we exit play_human_turn, it is because a function beneath it has thrown "end_turn_exception" 20140604 14:09:21< iceiceice> that means that when we are exiting this function, it is usually because we are handling the end_turn expeption and jumping back to play_controller 20140604 14:09:41< iceiceice> so we send the network data when destroying turn_info_sender 20140604 14:09:48< iceiceice> but what that means is that if the network data throws anything, 20140604 14:09:54< iceiceice> bang the program dies 20140604 14:10:46< iceiceice> so i think either we should revert the commit that introduced turn_info_sender, or factor out the "end_turn_exception" nonsense 20140604 14:10:54< iceiceice> maybe both 20140604 14:11:19< iceiceice> i think this will make MP extremely unstable, 20140604 14:11:48< iceiceice> in 1.10 normally if you have a bad connection, or your wifi craps out, you get a message eventually after timing out "a network error has occurred and the game cannot continue, would you like to save" 20140604 14:12:07< iceiceice> this double exception thing will cause instead you to just crash to desktop. 20140604 14:12:16-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20140604 14:15:30-!- noy [~Noy@wesnoth/developer/noy] has quit [Client Quit] 20140604 14:24:39-!- riksteri [~riksteri@dsl-tkubrasgw3-54f96b-216.dhcp.inet.fi] has joined #wesnoth-dev 20140604 14:25:16-!- happygrue [~happygrue@wesnoth/developer/wintermute] has joined #wesnoth-dev 20140604 14:31:22-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140604 14:33:20-!- gfgtdf [~chatzilla@e177149032.adsl.alicedsl.de] has joined #wesnoth-dev 20140604 14:34:20< gfgtdf> iceiceice: hm sohat exactlyhappened before when we got a network error ? 20140604 14:34:36< iceiceice> i think it would go back to the catch::network error block 20140604 14:35:36< iceiceice> playsingle_controller.cpp:582 20140604 14:37:10< gfgtdf> so the game also didnt continue when they got anetwork::error before ? 20140604 14:37:40< iceiceice> no but they got an opportunity to save 20140604 14:37:44< iceiceice> and would go back to the mp ui 20140604 14:37:53-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Quit: Computer's napping] 20140604 14:39:04< gfgtdf> iceiceice: hm ok then te netbug mightbe a bug onl related to the iplementtion of linger which we don'tlike anyway 20140604 14:39:19< iceiceice> i think its more than that though 20140604 14:39:40< iceiceice> so that function also throws end_turn_exception whent he countdown timer times out 20140604 14:39:46< iceiceice> what this will mean is that if you run out of time, 20140604 14:39:49< iceiceice> the program will crash to desktop 20140604 14:39:55< iceiceice> if you have disconnected from the game 20140604 14:40:10< iceiceice> really if any network error occurs 20140604 14:40:24< iceiceice> or if you process a restart turn 20140604 14:40:29-!- boucman_work [~rosen@wesnoth/developer/boucman] has quit [Ping timeout: 252 seconds] 20140604 14:40:40< iceiceice> so for instance, if the host is playing and decides to droid their side, 20140604 14:40:46-!- aquileia [863c8e23@gateway/web/freenode/ip.134.60.142.35] has joined #wesnoth-dev 20140604 14:40:49< iceiceice> and they have anetwork problem, 20140604 14:40:52< iceiceice> the game will immediately crash 20140604 14:40:56< aquileia> shadowm: You looked for me? 20140604 14:41:17< gfgtdf> iceiceice: ithink the network::errors still catche where it was also catched before ? 20140604 14:41:22< iceiceice> no, 20140604 14:41:22< aquileia> My commit back then didn't change lowercase AFAICT 20140604 14:41:26< gfgtdf> catched* 20140604 14:41:29< iceiceice> if there is an active exception, 20140604 14:41:33< iceiceice> and a second exception is thrown, 20140604 14:41:37< iceiceice> terminate() is immediately called. 20140604 14:41:47< gfgtdf> iceiceice: ok i idnt know 20140604 14:41:51< aquileia> But as I build on Windows I wouldn't have noticed Linux specific errors 20140604 14:44:13< iceiceice> i mean like, i see why you wanted to make the turn_info_sender 20140604 14:44:21< iceiceice> to make sure that data gets sent and we stay in sync 20140604 14:44:25< iceiceice> idk what the way to fix that is. 20140604 14:44:34< iceiceice> i think the only way to do that is to get rid of end_turn_exception 20140604 14:44:55< iceiceice> it should be totally unnecessary to throw an exception to end the turn of the game. 20140604 14:45:14< iceiceice> i think its just fundamentally inconsistent with having a networked game, you always have to be able to allow networking errors to occur 20140604 14:45:15-!- EdB [~edb@85.69.242.6] has quit [Quit: Konversation terminated!] 20140604 14:45:47< iceiceice> if we have end_turn_exception then i guess that ... 20140604 14:45:57< iceiceice> the place that catches the end_turn_exception has to check the networking? 20140604 14:46:10< iceiceice> idk it seems goofy 20140604 14:46:11< gfgtdf> iceiceice: we could alsoput a try in send_save .. s estrucor an give the message there 20140604 14:46:23< iceiceice> gfgtdf: i dont think that will work, 20140604 14:46:41< iceiceice> as soon as the network::send_data code throws anything, 20140604 14:46:47< iceiceice> we are already dead and its too late to catch 20140604 14:46:58< gfgtdf> why ? 20140604 14:47:02< iceiceice> because, 20140604 14:47:04< iceiceice> if an exception is thorwn, 20140604 14:47:08< iceiceice> and there is already an exception being handled 20140604 14:47:12< iceiceice> terminate is immediately called 20140604 14:47:26< gfgtdf> hm iwould rather test that 20140604 14:47:44< iceiceice> http://stackoverflow.com/questions/130117/throwing-exceptions-out-of-a-destructor 20140604 14:48:12< gfgtdf> iceiceice: but if we do that we dont throw out of teh estructr anymore 20140604 14:48:19< gfgtdf> iceiceice: sincewecatch it in te destructor 20140604 14:48:31< iceiceice> its not about throwing in the destructor, 20140604 14:48:39< iceiceice> the destructor is called as part of the exception handling 20140604 14:48:41< iceiceice> for end_turn_exception 20140604 14:48:51< iceiceice> we are already in exception handling mode when we get to the destructor 20140604 14:48:54< gfgtdf> iceiceice: ye i know 20140604 14:48:55< iceiceice> when we call network::send_data, 20140604 14:48:59< iceiceice> we are still in exception handling mode 20140604 14:49:01< gfgtdf> iceiceice: i dont believe unless i test 20140604 14:49:09< iceiceice> ok go ahead 20140604 14:49:20< gfgtdf> iceiceice: dont have c++ on this pc 20140604 14:49:30< iceiceice> i think what will happen is, as soon as there is a line in network::send_data, "throw network::error()", 20140604 14:49:33< iceiceice> terminate will be called 20140604 14:49:38< iceiceice> even if you are in try catch block in the destructor 20140604 14:50:10< iceiceice> idk 20140604 14:50:51< gfgtdf> iceiceice: well ifyou arewrongmyplan would be implementing a "continue the game as sp" option if a etwork error occurs there 20140604 14:51:06< gfgtdf> iceiceice: which i consier useful 20140604 14:51:28< iceiceice> hmmm ok 20140604 14:51:32< iceiceice> i guess you already have that option? 20140604 14:51:35< iceiceice> you can save and reload as sp 20140604 14:52:02< gfgtdf> iceiceice: sour you can do that but tmore complicate 20140604 14:52:13< iceiceice> y but is the code complexity worth it? 20140604 14:52:34< iceiceice> let me ask you a different question, 20140604 14:52:41< iceiceice> how feasible do you think it is to get rid of end turn exception 20140604 14:53:04< gfgtdf> iceiceice: i think it make things even easier if we move the network::error catch toplayturn.cpp which also hanled te netwrok stuff 20140604 14:53:15-!- boucman_work [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20140604 14:53:35< gfgtdf> iceiceice: for linger moe or in general you mean ? 20140604 14:53:55< iceiceice> i mean to delete the exception type and use normal flow control 20140604 14:54:19< iceiceice> i know there are like wierd lua circumstances that throw it, im asking like, do you think that could be changed easily 20140604 14:59:45< aquileia> shadowm: Looking at my commit, I really don't understand how it would break lowercase... it shouldn't even have surfaced that pre-existing bug as I don't see it calling any of the new functions 20140604 14:59:55-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20140604 15:01:20< aquileia> I mean, byte_size_from_utf8_first will probably influence it, but my implementation was already replaced by now, so it can't be that 20140604 15:04:08< iceiceice> gfgtdf: 20140604 15:04:17< iceiceice> i think its just bad practice to throw errors from destructors 20140604 15:04:24< iceiceice> esp. if its like network error 20140604 15:04:39< iceiceice> i dont think its a good idea to do any networking in a destructor ever, 20140604 15:04:55< iceiceice> it means that C++ won't know how to destroy things if there is a slight breeze on the internet. 20140604 15:05:11< iceiceice> if you want to make a guarantee that play_human_turn will always try to send the network data before exiting, 20140604 15:05:25< iceiceice> the only way that you can do that is to catch end_turn_exception lower in the call stack 20140604 15:05:27< iceiceice> or eliminate it 20140604 15:05:39< iceiceice> you cant fix by destructor tricks / throwing more exceptions 20140604 15:07:28< gfgtdf> iceiceice: if i put a try/catch in there i dont "throw an sexection from the destructor" 20140604 15:07:53< gfgtdf> s/there/then 20140604 15:08:02< iceiceice> it still wont work though if you are already handling an exception 20140604 15:08:10< iceiceice> destructor is supposed to mean "i am deallocating this object now." 20140604 15:08:28< iceiceice> not "hold on, i am writing an email to my mom now." 20140604 15:08:31< gfgtdf> iceiceice: no its not 20140604 15:08:57< iceiceice> i think the right thing is maybe, 20140604 15:09:00< gfgtdf> iceiceice: that is a common technique 20140604 15:09:29< iceiceice> hmm well 20140604 15:09:43< iceiceice> even still its more convoluted then necessary, 20140604 15:09:53< iceiceice> i think maybe play_human_Turn should catch any end_turn_exceptions, 20140604 15:09:56< iceiceice> then run networking, 20140604 15:09:59< iceiceice> then rethrow them 20140604 15:11:00< iceiceice> i mean it doesnt really make sense, 20140604 15:11:09< iceiceice> why doesnt play_human_turn just return the result, like a normal function 20140604 15:11:21< iceiceice> theres really no reason for it to be throwing just because someone ended a turn 20140604 15:11:56< iceiceice> if you do networking stuff with active exceptions its just going to become a maintainence nightmare 20140604 15:15:16-!- irker221 [~irker@fehu.ai0867.net] has joined #wesnoth-dev 20140604 15:15:16< irker221> wesnoth: Chris Beck wesnoth:master e6ebc74ef2e1 / src/tests/ (test_serialization.cpp test_util.cpp): move utf8::lowercase tests to the right test file http://git.io/qp-sMQ 20140604 15:23:19< iceiceice> gfgtdf: i think its better if it works like this: http://hastebin.com/nicuyuvuju.coffee 20140604 15:23:36< iceiceice> like it currently does in playsingle_controller 20140604 15:24:43< gfgtdf> iceiceice: why should it ? 20140604 15:25:08< iceiceice> because its more robust 20140604 15:25:21< gfgtdf> iceiceice: i dont see why 20140604 15:25:49< iceiceice> gfgtdf: it may make perfect sense to you how the intricacies of multiple destructor interactions works and how to do it perfectly safely 20140604 15:25:58< AI0867> iceiceice: according to what I've just read, a try{ whatever }catch(...){} is the preferred way to swallow exceptions in a destructor 20140604 15:26:10< iceiceice> but you are not the only person who works on the project, 20140604 15:26:27< iceiceice> if we are doing networking while handling active excceptions it means that changing one line could cause very bad things to happen 20140604 15:26:33< iceiceice> if one person comes along and makes a change, 20140604 15:26:41< iceiceice> we might think the project is still wroking fine, compiling fine, passing all tests, 20140604 15:26:54< iceiceice> and then we make a release where networking just blows up. 20140604 15:27:35< iceiceice> so we acutally want it to not just work, 20140604 15:27:37< iceiceice> but work robustly 20140604 15:27:49< iceiceice> and make it easy to inspect and see that it is working 20140604 15:27:51< iceiceice> even if you are a C++ novice 20140604 15:28:01-!- sachith500 [~kvirc@112.134.160.140] has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] 20140604 15:28:22-!- aquileia [863c8e23@gateway/web/freenode/ip.134.60.142.35] has quit [Quit: Page closed] 20140604 15:29:16< iceiceice> i think the real issue is that we should catch end turn exceptions lower in the call stack, maybe even lower than that function 20140604 15:29:18< gfgtdf> AI0867: it it our play to always use uf8 fo internl things ? 20140604 15:29:35< gfgtdf> is t-+ 20140604 15:29:43< gfgtdf> is it* 20140604 15:30:05< AI0867> we assume all internal data is utf8 unless otherwise stated 20140604 15:30:50< gfgtdf> AI0867: im asking becasue in savegame.cpp there are functions converting to utf8 and i wonder whether the are really needed+ 20140604 15:33:49< gfgtdf> AI0867: do you know whether our gui2 dialogs always return a utf8 string in textboxes+similar? 20140604 15:35:30< iceiceice> AI0867: " according to what I've just read, a try{ whatever }catch(...){} is the preferred way to swallow exceptions in a destructor" do you know if that leads to undefined behavior if the destructor is called while unwinding stack from another exception? 20140604 15:36:09< gfgtdf> iceiceice: i stilldont believe that 20140604 15:36:40< iceiceice> idk im asking AI0867 20140604 15:37:11< iceiceice> its also dangerous for other reasons, 20140604 15:37:16< iceiceice> theres any number of network errors that could occur 20140604 15:37:20< iceiceice> maybe the socket dies, 20140604 15:37:29< iceiceice> maybe theres an obscure error that leads to a stream making an exception. 20140604 15:37:34< iceiceice> maybe its platform specific. 20140604 15:37:47< iceiceice> maybe sometimes you can get std::ioexception instead of network error 20140604 15:37:51< iceiceice> what will you do, catch all exceptions? 20140604 15:38:34< iceiceice> thats usually a sign you are doing something wrong if you have a catch all block 20140604 15:41:09< iceiceice> looking at network.cpp i guess it also throws config::error? 20140604 15:42:05< iceiceice> the reason i dont like it is that, 20140604 15:42:16< iceiceice> if we forget an exception like this, but we use a more normal control schee, 20140604 15:42:20< iceiceice> we will catch it at high level and not termiante 20140604 15:42:29< iceiceice> because we have other catch blocks in game.cpp etc. 20140604 15:42:38< iceiceice> if we do it in destructor and forget one though, 20140604 15:42:40< iceiceice> then band we are dead 20140604 15:42:43< iceiceice> *bang 20140604 15:43:06< iceiceice> its really bad for the game if someone spends time playing their game and it crashes unrecoverably. 20140604 15:43:11< iceiceice> it makes people not want to play the game if that happens. 20140604 15:43:22< iceiceice> so why take a risk? 20140604 15:43:38< iceiceice> 1.10 was actually pretty stable even with the end_turn_exceptions being thrown around 20140604 15:43:58< iceiceice> at least i never saw a network error result in crash to desktop. 20140604 15:46:52< gfgtdf> iceiceice: in the thread you linked was a quote: "So destructors should generally catch exceptions and not let them propagate out of the destructor" quote the the c++ iso draft. Also it's possible tp catch all errors with at catch (...) 20140604 15:47:04< iceiceice> i think this misses the point 20140604 15:47:15< iceiceice> its like dereferencing a pointer without checking if its null 20140604 15:47:20< iceiceice> and putting a code comment "this can never be null" 20140604 15:47:38< iceiceice> maybe you spend all day thinkingab out it and you are really sure that as written it will never ever be null 20140604 15:47:41< iceiceice> but why take the risk? 20140604 15:47:45< iceiceice> why not just check if its null? 20140604 15:47:53< iceiceice> and then if someone makes a mistake later it wont cause a crash. 20140604 15:48:04< iceiceice> what if someone adds a new exception to the networking code later? 20140604 15:48:23< iceiceice> and doesnt realize that you have this destructor catch mechanism that *needs* to catch it immediately? 20140604 15:49:43< iceiceice> if you do networking code in a destructor with a list of exceptions, 20140604 15:49:52< iceiceice> then there is no way for someone else to verify that it wont cause a crash, 20140604 15:49:56< iceiceice> unless they read all fo the networking code. 20140604 15:50:23< iceiceice> at least if it is outside the destructor, there can be a master list in game_controller etc. 20140604 15:50:38< iceiceice> with this way, then there need to be like multiple master lists that all need to agree. 20140604 15:51:34-!- artisticdude [~Ben@141.161.133.32] has joined #wesnoth-dev 20140604 15:54:41-!- gfgtdf_ [~chatzilla@e177149032.adsl.alicedsl.de] has joined #wesnoth-dev 20140604 15:57:41-!- gfgtdf [~chatzilla@e177149032.adsl.alicedsl.de] has quit [Ping timeout: 255 seconds] 20140604 15:57:51-!- gfgtdf_ is now known as gfgtdf 20140604 15:59:39< iceiceice> gfgtdf: 20140604 15:59:39< iceiceice> Second, even if an exception thrown by a destructor is successfully thrown and caught, it is still bad because it causes the application to leak memory. 20140604 16:15:26< gfgtdf> iceiceice: i dont see how it eaks memory 20140604 16:16:00< iceiceice> point is, even the old implementation was leaking memory 20140604 16:16:17< iceiceice> i think 20140604 16:16:38< iceiceice> idk it depends on where else this stuff was happening in destructors 20140604 16:16:40-!- artisticdude [~Ben@141.161.133.32] has quit [Quit: artisticdude] 20140604 16:17:10-!- gfgtdf_ [~chatzilla@e177149032.adsl.alicedsl.de] has joined #wesnoth-dev 20140604 16:17:57< gfgtdf_> iceiceice: if the netwroking coe leky memory when it thows that is a serius problme of the netwrokng coe 20140604 16:18:02< gfgtdf_> code* 20140604 16:18:07< iceiceice> no, its not 20140604 16:18:13< iceiceice> so for example, in the rpelay_network_sender object 20140604 16:18:24< iceiceice> it holds a private int, and a replay & 20140604 16:18:35< iceiceice> its destructor throws network errors 20140604 16:18:41< iceiceice> which are only caught in the play_controller somewhere 20140604 16:18:55< iceiceice> maybe game controller, its so complicated that i cant easily figure out where 20140604 16:19:09< iceiceice> but in C++ if the destructor throws an exception it doesnt catch, then it is a memory leak. 20140604 16:19:23< iceiceice> and the object is not actually deallocated 20140604 16:19:51-!- gfgtdf [~chatzilla@e177149032.adsl.alicedsl.de] has quit [Ping timeout: 240 seconds] 20140604 16:20:05-!- gfgtdf_ is now known as gfgtdf 20140604 16:20:13< gfgtdf> iceiceice: Independed from which we use we should catch errors thrown by networking in playturn/replay sender if we want to implement a "coninue game in sp" which i consider a good step in unifying sp and mp. 20140604 16:21:41< iceiceice> y i mean 20140604 16:21:53< iceiceice> maybe we should have like an abstract base class "networking object" 20140604 16:21:57< gfgtdf> iceiceice: my plan is still to merge playsinge/playmp_contoller, an to put some OO in playturn instead 20140604 16:22:01< iceiceice> which does that 20140604 16:22:04-!- Haudegen [~quassel@85-126-180-242.volume.xdsl-line.inode.at] has quit [Remote host closed the connection] 20140604 16:22:10< iceiceice> and have only one master list of exceptions that netowrking can throw 20140604 16:22:30< iceiceice> but if you do that should make very much sure you catch all the exceptiosn you can 20140604 16:22:34< iceiceice> and delete the master block in game.cpp 20140604 16:22:55< iceiceice> so people dont have false sense of security 20140604 16:23:21< iceiceice> because if you are doing it in destructor and you miss an exception you are dead 20140604 16:23:30< iceiceice> and having master block at game_controller wont save you 20140604 16:23:55< iceiceice> idk i guess you really like the RAII blocks to make sure that networking happens 20140604 16:24:12< iceiceice> i think its better to just make sure the code around there doesnt throw 20140604 16:24:16< iceiceice> or like, 20140604 16:24:23< iceiceice> what i mean to say is, 20140604 16:24:35< iceiceice> if you do that i think it should be mandatory that the code aroudn there doesnt throw 20140604 16:24:55< gfgtdf> iceiceice: the mian reason why i used those RAII blocks is to make code simple to prepare merging playsinge/playmp controller 20140604 16:24:58< gfgtdf> main* 20140604 16:25:04< iceiceice> y ok 20140604 16:25:15< iceiceice> i am going to make init_Side, and some other functions, 20140604 16:25:17< iceiceice> return LEVEL_RESULT 20140604 16:25:20< iceiceice> rather than throw exceptions 20140604 16:25:48< gfgtdf> iceiceice: LEVEL_RESULT isnt that liek victory defeat ? 20140604 16:25:54< iceiceice> it can also be LEVEL_RESULT none 20140604 16:26:13< iceiceice> it is the variable carried by end_level_exception iiuc 20140604 16:27:02< gfgtdf> and what you do in case of end_turn_exception ? 20140604 16:27:09< iceiceice> catch it and return its carreid level result 20140604 16:27:39< gfgtdf> iceiceice: i dont think that this will wolve teh prolem because even if you remove those 2 there are still exceptions left 20140604 16:28:06< iceiceice> it will help anyways i think 20140604 16:28:10< iceiceice> what other exceptions are there? 20140604 16:28:38< gfgtdf> iceiceice: idk config ecetions maybe 20140604 16:28:44< gfgtdf> iceiceice: or netwrok error 20140604 16:29:14< iceiceice> hmm well the way it is rgiht now, master is broken 20140604 16:29:26< iceiceice> so we should fix it or backtrack and come up with another plan 20140604 16:29:41< iceiceice> i dont see why we cant just catch exceptions lower 20140604 16:31:31-!- gfgtdf_ [~chatzilla@e177149032.adsl.alicedsl.de] has joined #wesnoth-dev 20140604 16:32:02< gfgtdf_> iceiceice: for now we could just undo that use of the raii thing and put it back later when we actualy can catch those error in playturn properly 20140604 16:32:26< iceiceice> ok 20140604 16:33:21-!- gfgtdf [~chatzilla@e177149032.adsl.alicedsl.de] has quit [Ping timeout: 240 seconds] 20140604 16:33:25-!- gfgtdf_ is now known as gfgtdf 20140604 16:34:38-!- gfgtdf [~chatzilla@e177149032.adsl.alicedsl.de] has quit [Client Quit] 20140604 16:34:39< iceiceice> im going to try to make the play_controller things catch and return like i said, i think thats good anyways 20140604 16:39:05-!- Bodhi-Baum [~Bodhi@dslb-084-063-029-173.pools.arcor-ip.net] has joined #wesnoth-dev 20140604 17:08:04-!- Haudegen_ [~quassel@178.115.128.144.wireless.dyn.drei.com] has joined #wesnoth-dev 20140604 17:15:24-!- Haudegen_ [~quassel@178.115.128.144.wireless.dyn.drei.com] has quit [Remote host closed the connection] 20140604 17:15:36-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20140604 17:15:59-!- Haudegen__ [~quassel@178.115.128.144.wireless.dyn.drei.com] has joined #wesnoth-dev 20140604 17:18:15-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20140604 17:18:36< shadowm> aquileia: Did you take a look at iceiceice's PR though? 20140604 17:18:41< shadowm> AI0867: Same for you. 20140604 17:18:59< iceiceice> if you want to understand it, read gfgtdf's comment from yesterday 20140604 17:19:11< iceiceice> or ai's commit message also 20140604 17:19:54< shadowm> "shadowm, it's already beeen merged in master." 20140604 17:20:21-!- Spoffy [~chatzilla@152.78.175.8] has quit [Ping timeout: 252 seconds] 20140604 17:20:33< shadowm> I had somehow collapsed both highlights including only "^" in my mind and the first one didn't point to a commit. 20140604 17:21:21-!- boucman_work [~rosen@wesnoth/developer/boucman] has quit [Ping timeout: 240 seconds] 20140604 17:21:53< shadowm> That commit message is much better, yeah. 20140604 17:21:57-!- prophile [~alynn@oftn/member/prophile] has quit [Quit: The Game] 20140604 17:22:44< shadowm> AI0867, aquileia: I'm still curious why the name changes since 1.12. 20140604 17:23:45-!- thunderstruck [~zaibotren@cpc13-sgyl31-2-0-cust696.18-2.cable.virginm.net] has joined #wesnoth-dev 20140604 17:27:24-!- Haudegen__ is now known as Haudegen 20140604 17:29:49< fabi> hi iceiceice 20140604 17:30:06< iceiceice> hi fabi 20140604 17:30:44< fabi> statues and orbs 20140604 17:31:00< fabi> What are statues? 20140604 17:31:08< iceiceice> statues are petrified untis 20140604 17:31:26< fabi> oh 20140604 17:31:28< fabi> akay 20140604 17:31:30< fabi> okay 20140604 17:31:47-!- kex [~kex@212.92.210.53] has quit [Remote host closed the connection] 20140604 17:32:20< fabi> iceiceice: And you do not want them to have any orb? 20140604 17:32:37< iceiceice> i think in most cases it is better if they dont have an orb 20140604 17:32:40< iceiceice> because they cannot move 20140604 17:32:45< iceiceice> and there is a grey rock overlay on them to show it 20140604 17:32:58-!- Sulfur2 [~Miranda@p5B008472.dip0.t-ipconnect.de] has joined #wesnoth-dev 20140604 17:33:03< iceiceice> in almost every scenario with a petrified unit that i know of, the unit is petrified for the entire level 20140604 17:33:08< iceiceice> and is just a cosmetic decoration 20140604 17:33:26< iceiceice> usually its like, i could have used {ITEM} and placed the base frame there, but ia lso dont want any other unit to move to that hex. 20140604 17:33:35< iceiceice> so if they have orbs it is confusing 20140604 17:33:58< fabi> depending on which team they are on they can reveal hidden units. But that might have changed in between. 20140604 17:34:06< iceiceice> y thats true 20140604 17:34:10< iceiceice> if you control a statue it gives vision i guess 20140604 17:34:21< iceiceice> but my commit makes it so that statues you dont control dont have orbs 20140604 17:34:31< iceiceice> when you look at them 20140604 17:34:52< iceiceice> if they became unpetrified then i guess they would immediately have an orb 20140604 17:34:57-!- Sulfur [~Miranda@p5B008472.dip0.t-ipconnect.de] has quit [Ping timeout: 240 seconds] 20140604 17:35:11< iceiceice> idk i guess there is some umc where units can petrify other units, 20140604 17:35:32-!- EliDupree [~quassel@66-189-34-122.dhcp.oxfr.ma.charter.com] has quit [Remote host closed the connection] 20140604 17:35:51< iceiceice> but even in that case i think this scheme is probably what we want 20140604 17:35:53< fabi> Maybe some umc features petrified units the player can awake. 20140604 17:36:07< iceiceice> y its true 20140604 17:36:26< iceiceice> do you think it complicates the interface to have this exception? 20140604 17:36:35< fabi> hmmmm 20140604 17:36:43< iceiceice> my feeling is the grey rock overlay already makes it pretty obvious that it is not able to move 20140604 17:37:18< fabi> I am more worried about the blue allied orb. 20140604 17:38:02< iceiceice> y thats kind of true 20140604 17:38:04< shadowm> I personally think they should have whatever orbs they'd normally have. 20140604 17:38:27< iceiceice> i think the enemy's having orbs is good sometimes and people might like it, 20140604 17:38:36< shadowm> (Also, the petrified effect is not an overlay, it's just a trivial RGB grayscaling effect.) 20140604 17:38:39< iceiceice> but int he cases where they would want it, they still most likely dont want statues to have orbs 20140604 17:39:01< iceiceice> so i can tell you, the complaint in the forums from tekelili was based on the following, 20140604 17:39:13< iceiceice> he wrote a scripted TGT ceremony sequence for the annual 2v2 tournament 20140604 17:39:27< iceiceice> which he has planned carefully to work a certain way, 20140604 17:39:35< iceiceice> he asks people to set their animatino speed a certain way, 20140604 17:39:52< shadowm> I should do that some day. 20140604 17:40:05< iceiceice> if all the statues have orbs he will most likely tell everyone to turn off the orbs or something 20140604 17:40:08-!- EliDupree [~quassel@66-189-34-122.dhcp.oxfr.ma.charter.com] has joined #wesnoth-dev 20140604 17:40:31< iceiceice> idk on many of the mp maps that do have statue units the orbs on the statues are a bit annoying, 20140604 17:40:40< iceiceice> i've never seen a map where you are allied to a statue, 20140604 17:40:43< shadowm> I didn't know orbs could be turned off. 20140604 17:40:48< iceiceice> in master they can 20140604 17:40:59< iceiceice> that's fabis project :) 20140604 17:41:12< shadowm> Yeah, I guess, but that won't reach stable until maybe 2015. 20140604 17:41:14< iceiceice> anyways if i were allied to a statue i think iw ouldnt mind having the ally orb 20140604 17:41:21< iceiceice> otherwise i might not realize 20140604 17:41:28< iceiceice> but its fairly ad hoc 20140604 17:41:36< iceiceice> idk that was why i asked what you thoguht before when i made the PR 20140604 17:41:43< iceiceice> fabi: ^ 20140604 17:42:00< shadowm> The thing is that tekelili's just a specific use case. 20140604 17:42:16< iceiceice> i mean if statues are going to have orbs, 20140604 17:42:27< iceiceice> then actually imo it would be good to change allt he mainline mp maps, 20140604 17:42:38< shadowm> HttT once had a scenario, Valley of Statues or so, where your own units could be petrified by cockatrices, and so could some enemy units. 20140604 17:42:42< iceiceice> so that they dont have units there and use place image / put a blocker thing there 20140604 17:43:17< shadowm> I've personally wished for an attribute to disable bars and orbs for individual units in [unit]. 20140604 17:44:08< shadowm> If that existed we wouldn't have to worry about distinguishing between decorative and practical uses of the petrify status. 20140604 17:44:40< iceiceice> if we are actually concerned about getting confused about who owns statues in some umc game, 20140604 17:44:49< iceiceice> its sort of unfortunate that the petrify effect blcoks the teamcolor 20140604 17:45:05< shadowm> It doesn't disable ellipses AFAIR. 20140604 17:45:19< iceiceice> hmm ok i guess thats right 20140604 17:45:27< shadowm> Plus we now have a team-colored flag for the currently shown unit on the sidebar. 20140604 17:46:15< iceiceice> idk there are many options, you could say "no orbs for petrified units, until they become unpetrified" 20140604 17:46:24< iceiceice> you could say "petrifieid units have orbs like everything else" 20140604 17:46:41< iceiceice> that one got complaints so i think the "enemy petrified units dont have orbs" is reasonable middle ground 20140604 17:46:47< iceiceice> it already can't move for two reasons 20140604 17:46:53< iceiceice> one its not on your team... 20140604 17:46:55< iceiceice> two its a rock 20140604 17:47:05< iceiceice> and i dont think the user will normally be confused about this 20140604 17:47:13< shadowm> Sadly it's inconsistent with other enemy units having an orb (yes I know this wasn't the case in 1.10). 20140604 17:47:15< iceiceice> so putting the "i can't move" orb is pretty redundant 20140604 17:47:50< iceiceice> that was what i was trying to say in commit message 20140604 17:50:32< fabi> iceiceice: Just turn the enemy orb off in 1.12? 20140604 17:51:31< fabi> And keep petrified units and non ones in sync. 20140604 17:51:55< iceiceice> ok, up to you 20140604 17:52:12< iceiceice> i was just making a suggestion, feel free to revert and fix as you like you 20140604 17:52:52< iceiceice> i personally would favor the enemy statues not to have orbs, otherwise i probably wont use the enemy orb feature 20140604 17:53:02< iceiceice> but its not too important 20140604 17:53:15< fabi> I don't know enough about how petrified units are used on mp maps. 20140604 17:53:33< iceiceice> i guess the best thing is if there were a feature liek shadowm says 20140604 17:53:36-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140604 17:53:48< fabi> indeed 20140604 17:53:51< iceiceice> but its work to chagne everything around also 20140604 17:54:01< irker221> wesnoth: Ignacio R. Morelle wesnoth:master f3b87a936683 / src/campaign_server/campaign_server.cpp: campaignd: Tiny variable refactoring http://git.io/Whkfgg 20140604 17:54:04< irker221> wesnoth: Ignacio R. Morelle wesnoth:master 344fa792c2b2 / / (6 files in 3 dirs): campaignd: Quick-and-dirty implementation of upload-time blacklisting http://git.io/Em5wlQ 20140604 17:54:37< iceiceice> i think enemy statues to have orbs is somewhat of a backward compatibility issue though, i guess that is why tekelili was complaining 20140604 17:55:19< iceiceice> in mainline UtBS i guess there is the scenario where one of your units becomes a statue? 20140604 17:56:02< shadowm> Of course I'd bet there are many more scenarios where petrify is used for non-decorative purposes in UMC. 20140604 18:02:59-!- Spoffy [~chatzilla@82.199.155.15] has joined #wesnoth-dev 20140604 18:08:46-!- boucman [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20140604 18:09:35< iceiceice> even those i dont think are broken if the unit only has an orb once it becomes unpetrified 20140604 18:10:54< iceiceice> gfgtdf: https://gna.org/bugs/index.php?21873 20140604 18:10:59-!- riksteri [~riksteri@dsl-tkubrasgw3-54f96b-216.dhcp.inet.fi] has quit [Quit: riksteri] 20140604 18:11:01< iceiceice> i wonder if this bug is caused by the double exceptions 20140604 18:11:42< iceiceice> it sounds to me like it could be related 20140604 18:11:48< shadowm> I wonder if utf8::lowercase does what it's supposed to do with non-ASCII characters. 20140604 18:11:59< shadowm> For example, in Spanish lowercase Ñ is ñ. 20140604 18:12:01< iceiceice> thats the kind of report i would expect from something like that 20140604 18:13:10< iceiceice> idk i would ahve to review the rest of the code though, idk where i actually think that the two exception thing woudl be happening rihgt now, 20140604 18:13:18< iceiceice> unless he actually has a network problem 20140604 18:13:43< irker221> wesnoth: Ignacio R. Morelle wesnoth:master f5aa542671a5 / src/campaign_server/blacklist.hpp: campaignd: Forgot to add a Doxygen comment to the last commit http://git.io/kUlujg 20140604 18:13:46< irker221> wesnoth: Ignacio R. Morelle wesnoth:master f09fd42645e2 / src/tests/test_serialization.cpp: Add test cases for utils::wildcard_string_match() http://git.io/Q2YnUw 20140604 18:15:44< shadowm> BOOST_CHECK_EQUAL ( utf8::lowercase("ÁÑÆ") , "áñæ" ); 20140604 18:15:50< shadowm> src/tests/test_serialization.cpp(85): error in "test_lowercase": check utf8::lowercase("ÁÑÆ") == "áñæ" failed [ÁÑÆ != áñæ] 20140604 18:15:55< shadowm> Sadness. 20140604 18:18:14< shadowm> Setting LC_ALL=es_CL.UTF-8 didn't change the result either. 20140604 18:24:29< shadowm> iceiceice, gfgtdf: Thanks for fixing the lowercase bug, btw. :) 20140604 18:28:30< iceiceice> hmm wait so is it still broken? 20140604 18:29:04< shadowm> Well, I don't know if this worked before, I kind of doubt it. 20140604 18:30:11< shadowm> Interesting. '?????' matches a shorter string but it doesn't match the empty string. 20140604 18:38:13< shadowm> '?' doesn't match the empty string either, but '***?**' does. 20140604 18:39:47< irker221> wesnoth: Ignacio R. Morelle wesnoth:master fed57b0f7165 / src/tests/test_serialization.cpp: Test a few counterintuitive wildcard_string_match() border cases http://git.io/zynrfw 20140604 18:43:10< shadowm> iceiceice: Nope, it didn't work before either. 20140604 18:43:30< shadowm> "ÁÉÆABCÑÑ" -> "ÁÉÆabcÑÑ" in 1.11.11. 20140604 18:44:18< shadowm> Even with LC_ALL=es_CL.UTF-8 set, which otherwise has a visible effect. 20140604 18:46:21-!- Haudegen [~quassel@178.115.128.144.wireless.dyn.drei.com] has quit [Ping timeout: 240 seconds] 20140604 18:46:35-!- Haudegen [~quassel@178.115.131.209.wireless.dyn.drei.com] has joined #wesnoth-dev 20140604 18:51:13< iceiceice> :/ 20140604 18:52:23< shadowm> I have no idea what would be required to make it work and I imagine supporting all possible alphabets would be a lot more complicated. 20140604 18:52:35-!- lipkab [~the_new_l@host-91-147-212-189.biatv.hu] has joined #wesnoth-dev 20140604 18:52:41< shadowm> i18n stuff has always gone above my head, sadly. 20140604 18:55:03 * lipkab doesn't even know what's the difference between i18n, l10n and other [char][int][char]s. 20140604 18:56:32< iceiceice> does the notion of upper-case / lower-case apply to all languages? 20140604 18:56:40< iceiceice> *alphabets? 20140604 18:56:44< iceiceice> i would guess not? 20140604 18:57:07< shadowm> Probably not. 20140604 18:59:30-!- travis-ci [~travis-ci@ec2-54-237-189-64.compute-1.amazonaws.com] has joined #wesnoth-dev 20140604 18:59:30< travis-ci> [travis-ci] wesnoth/wesnoth#2951 (master - f09fd42 : Ignacio R. Morelle): The build was broken. 20140604 18:59:30< travis-ci> [travis-ci] Build details : http://travis-ci.org/wesnoth/wesnoth/builds/26783941 20140604 18:59:30-!- travis-ci [~travis-ci@ec2-54-237-189-64.compute-1.amazonaws.com] has left #wesnoth-dev [] 20140604 19:00:53< shadowm> Pretty sure that wasn't me. 20140604 19:01:52-!- lipkab [~the_new_l@host-91-147-212-189.biatv.hu] has quit [Ping timeout: 265 seconds] 20140604 19:02:05-!- WinterD [~quassel@177.196.200.77.rev.sfr.net] has quit [Ping timeout: 264 seconds] 20140604 19:03:52< iceiceice> the last test timed out 20140604 19:04:56< iceiceice> i restarted it, we'll see if it happens again 20140604 19:12:56< shadowm> Restarting builds on travis is a thing we can do? 20140604 19:14:26< iceiceice> y 20140604 19:14:28< iceiceice> you click on the link 20140604 19:14:43< iceiceice> and in the upper right theres little restart button 20140604 19:15:49< shadowm> Oh, I needed to sign in with my GitHub account, okay. 20140604 19:30:30-!- Bodhi-Baum [~Bodhi@dslb-084-063-029-173.pools.arcor-ip.net] has quit [Quit: Verlassend] 20140604 19:42:23< irker221> wesnoth: fendrin wesnoth:1.12 ebf797f65f5d / / (13 files in 4 dirs): Removed YAMG from the 1.12 branch codebase. http://git.io/YPyU6Q 20140604 19:47:00-!- Turuk_ [40399930@gateway/web/cgi-irc/kiwiirc.com/ip.64.57.153.48] has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client] 20140604 19:51:07-!- ancestral [~ancestral@17.114.45.98] has joined #wesnoth-dev 20140604 20:07:47-!- aquileia [2edf50c1@gateway/web/freenode/ip.46.223.80.193] has joined #wesnoth-dev 20140604 20:08:15-!- _8680_ [~8680@2002:4404:712c:0:791f:f289:f536:ed27] has quit [Remote host closed the connection] 20140604 20:08:38-!- _8680_ [~8680@2002:4404:712c:0:2c1d:25f1:32d6:d2ba] has joined #wesnoth-dev 20140604 20:10:46< aquileia> shadowm: Just for completeness, yes, I looked at the PR. But in any case I'd defer to AI's superior knowledge 20140604 20:12:08< aquileia> shadowm: As for the new namespaces, the alternative (used in 1.12) is prefixing every single function with utf8_, ucs4, ... 20140604 20:12:31< aquileia> namespacing just looks cleaner, I guess 20140604 20:13:37< aquileia> So AI didn't backport the rename as it doesn't fix any bugs, but implemented it in master for better readability 20140604 20:14:18< aquileia> AI0867: feel free to object if I'm wrong 20140604 20:15:57< aquileia> fabi: Deleting YAMG from 1.12 is probably a good idea... even when I have the time to fix it, it'll introduce new strings for the configuration menu and thus can't go in 1.12.0 anyhow 20140604 20:16:39< fabi> aquileia: 1.12.1 maybe 20140604 20:17:39< aquileia> but even then I can't guarantee I'll have it ready in time for the second release - I'm not actively working on it right now 20140604 20:18:19< aquileia> e.g. the numbox is a prerequisite for the dialog, and I still have to fix that PR 20140604 20:18:51-!- Guest56390 [~cib@p5DC74680.dip0.t-ipconnect.de] has quit [Ping timeout: 240 seconds] 20140604 20:32:19-!- Gambit [~derek@wesnoth/developer/grickit] has joined #wesnoth-dev 20140604 20:36:45-!- trewe [~trewe@74.22.158.5.rev.vodafone.pt] has joined #wesnoth-dev 20140604 20:48:18-!- prophile [~alynn@oftn/member/prophile] has joined #wesnoth-dev 20140604 20:48:54< irker221> wesnoth: sigurdfdragon wesnoth:1.12 05d36b9acb4d / projectfiles/CodeBlocks/wesnoth.cbp: CodeBlocks project update. http://git.io/l_PL_g 20140604 20:48:56< irker221> wesnoth: Ignacio R. Morelle wesnoth:1.12 bde4e8fdee55 / projectfiles/CodeBlocks/wesnoth.cbp: Merge pull request #190 from sigurdfdragon/CodeBlocks_Update_2014-06-04 http://git.io/cbMbwA 20140604 20:49:20-!- Sulfur2 [~Miranda@p5B008472.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20140604 21:02:29-!- ancestral [~ancestral@17.114.45.98] has quit [Quit: ancestral] 20140604 21:02:48-!- aquileia [2edf50c1@gateway/web/freenode/ip.46.223.80.193] has quit [Ping timeout: 240 seconds] 20140604 21:03:41-!- ancestral [~ancestral@17.114.45.98] has joined #wesnoth-dev 20140604 21:06:59-!- ancestral [~ancestral@17.114.45.98] has quit [Client Quit] 20140604 21:09:09-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Ping timeout: 252 seconds] 20140604 21:16:17-!- Haudegen [~quassel@178.115.131.209.wireless.dyn.drei.com] has quit [Ping timeout: 255 seconds] 20140604 21:18:09-!- Haudegen_ [~quassel@178.115.131.209.wireless.dyn.drei.com] has joined #wesnoth-dev 20140604 21:24:32-!- Haudegen_ is now known as Haudegen 20140604 21:25:50-!- gfgtdf [~chatzilla@d149024.adsl.hansenet.de] has joined #wesnoth-dev 20140604 21:26:28-!- thunderstruck [~zaibotren@cpc13-sgyl31-2-0-cust696.18-2.cable.virginm.net] has quit [Quit: leaving] 20140604 21:28:17-!- kex [~kex@93-143-99-214.adsl.net.t-com.hr] has joined #wesnoth-dev 20140604 21:33:29-!- ancestral [~ancestral@17.114.45.98] has joined #wesnoth-dev 20140604 21:41:20-!- prophile [~alynn@oftn/member/prophile] has quit [Quit: The Game] 20140604 21:49:41< shadowm> Has anyone tried to build and run the test suite on Windows? 20140604 21:55:50< iceiceice> i think aquileia has 20140604 22:02:17-!- ancestral [~ancestral@17.114.45.98] has quit [Quit: ancestral] 20140604 22:04:57-!- mjs-de [~mjs-de@f049171049.adsl.alicedsl.de] has quit [Remote host closed the connection] 20140604 22:19:12-!- Haudegen [~quassel@178.115.131.209.wireless.dyn.drei.com] has quit [Quit: No Ping reply in 180 seconds.] 20140604 22:20:36-!- Haudegen [~quassel@178.115.131.209.wireless.dyn.drei.com] has joined #wesnoth-dev 20140604 22:23:35-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 260 seconds] 20140604 22:27:53-!- Haudegen [~quassel@178.115.131.209.wireless.dyn.drei.com] has quit [Remote host closed the connection] 20140604 22:34:49-!- haudegen_ [~quassel@178.115.131.209.wireless.dyn.drei.com] has joined #wesnoth-dev 20140604 22:34:51< gfgtdf> AI0867: from how i read the code in savegame.cpp , the function infilesystem.cpp (ostream_file) expcet a local encoding (latin 1 on windows) while the gui code uses utf-8 ? Woudlnt it be better if the function in filesystem would do the utf8 <-> windows converting instead of the functions that use it ? 20140604 22:37:46-!- haudegen_ is now known as Haudegen 20140604 22:38:16-!- Haudegen is now known as Guest60373 20140604 22:39:27-!- Guest60373 is now known as Haudegen 20140604 22:40:09-!- boucman [~rosen@wesnoth/developer/boucman] has quit [Remote host closed the connection] 20140604 22:42:18< shadowm> s/latin 1/whatever that particular localization of Windows believes its non-Unicode encoding is/ 20140604 22:43:58< shadowm> For Western European languages that'd be CP 1252 (Windows US), which isn't even a 1:1 match with ISO 8859-1 (Latin 1) IIRC. 20140604 22:45:32< shadowm> Also IIRC, the only thing that's identical between both is the 7-bit ASCII subset. 20140604 22:46:06< gfgtdf> shadowm: i wanted to say s/Windows/my local Windows but i dont really know abut 20140604 23:10:05< gfgtdf> AI0867: are teh utf16, utf32 string in unicode.hpp null termainated ? 20140604 23:14:45-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Quit: Computer's napping] 20140604 23:19:24< gfgtdf> AI0867: meaning can i pass a &a[0] to a winapi function ? 20140604 23:29:12-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20140604 23:31:38-!- Spoffy [~chatzilla@82.199.155.15] has quit [Ping timeout: 240 seconds] 20140604 23:35:40< gfgtdf> if a is a utf16::string 20140604 23:39:13-!- Necrosporus_ [~Necrospor@unaffiliated/necrosporus] has joined #wesnoth-dev 20140604 23:42:19-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20140604 23:42:27-!- Necrosporus [~Necrospor@unaffiliated/necrosporus] has quit [Ping timeout: 260 seconds] 20140604 23:44:22-!- Haudegen [~quassel@178.115.131.209.wireless.dyn.drei.com] has quit [Remote host closed the connection] 20140604 23:49:00-!- irker221 [~irker@fehu.ai0867.net] has quit [Quit: transmission timeout] --- Log closed Thu Jun 05 00:00:09 2014