Log for on 21st July 2013:
Times are UTC Toggle Colours
00:27:30  *** Zuu has quit IRC
03:07:28  *** Supercheese has joined
06:47:04  *** Supercheese has quit IRC
07:48:07  *** Zuu has joined
07:48:07  *** ChanServ sets mode: +v Zuu
07:55:00  *** Alberth has joined
07:55:00  *** ChanServ sets mode: +v Alberth
08:35:55  *** frosch123 has joined
08:35:55  *** ChanServ sets mode: +v frosch123
08:52:34  *** Ristovski has joined
09:45:44  <Zuu> I've made a final review of to ensure that the new data sizes should be correct.
09:46:33  <Zuu> Should I add a _LAST = 255 enum to the page element type enum to emphaize that it is stored as a byte?
09:48:21  <Zuu> s/invalid chunk sizes/invalid data types/  <--- in a comment of the patch
09:48:45  <Zuu> s/invalid/wrong/
09:49:37  <Rubidium> enum?
09:50:12  <Zuu> story_base.h :30
09:50:22  <Rubidium> that requires something akin DirectionByte
09:50:43  <Zuu>
09:51:01  <Rubidium> as enums have "unknown" size, so it's also endian tricky
09:51:42  <Rubidium> so you need to force a known size, which you do with TinyEnumT
10:00:28  <michi_cc> Hmm, that's a bugger. ICU has nice support for proper word iteration, but due to some internal bugs it can only be used with UTF-16 input and our Textbuf class is very much UTF-8 based (counting bytes left and right).
10:01:00  <Rubidium> templatification! ;)
10:01:13  <Rubidium> a UTF16 and UTF8 version. One with proper support, one without
10:06:20  <michi_cc> That's not the real problem. Those bytes are e.g. used for limiting input to what the network protocol can stomach, which means we'd have to keep a shadow utf-8 byte count as well.
10:06:40  <Zuu> lol, looking for where MakeEnumPropsT defined members are used using "find references" in visual studio 2008 crashes it :-)
10:07:04  <frosch123> aren't all ediboxes limited by number of characters?
10:07:17  <frosch123> while it generally considers 4 byte per char, no matter what
10:07:46  <michi_cc> And of course while string layouting with ICU ends up using UTF-16 as well, all functions in between expect UTF-8.
10:08:48  <frosch123> don't port ottd to ucs2 :p
10:09:43  <michi_cc> frosch123: There's both a character limit (which is actually a code point limit) and a byte limit. The byte limit is used far more often.
10:10:29  <Rubidium> michi_cc: most strings for the network protocol are limited in UTF characters
10:11:04  <Rubidium> e.g. 31 characters, which could be up to 125 bytes
10:11:37  <Rubidium> at least for the names of lots of things. Not sure about the chat though
10:12:34  <michi_cc> Sure about that? My first random look that ended up at network password ad that is limited to 33 *bytes*. And almost all other NETWORK_*_LENGTH in network/core/config.h count bytes as well.
10:17:20  *** ntoskrnl has joined
10:19:55  <Rubidium> I didn't think of that part of the code ;)
10:27:44  *** Ristovski has quit IRC
10:27:50  *** Ristovski has joined
10:37:47  <Zuu> I've updated the story-sl patch. I've run over story.cpp and made a few changes so that it better reflects the bit count of data types in story_base.h. I've used Extract<>() for the enum now.
10:39:44  <Zuu> I have defined that the enum uses 8 bytes in command parameters. I though that would reduce the risk that someone thinks that the parameters have more free bits than they do have. But maybe there is a good reason to only use 2 bits for now?
10:59:58  <frosch123> use 8 :)
11:33:48  <Zuu> I though that our network transport package has a fixed size and thus there is no reason to go down to 2 bits if we want to reserve 8.
11:34:12  <Zuu> (or at least the DoCommand parameters have a fixed size)
11:34:46  <frosch123> yeah, you only need to do the bit stuffing for bloated commands which need more than the 2 or 3 parameters
13:10:58  <Zuu> Oh, OpenTTD deletes story pages but not page elements when a company is closed down:
13:11:16  <Zuu> Also, OpenTTD forgets to close goal+story windows when a company is removed:
13:11:47  <Zuu> A side effect of the story-gui-owner.patch is that the window title of those windows will use the company colour.
13:14:53  *** DorpsGek changes topic to "OpenTTD Dev Channel || Latest SVN: r25620 || Logs: || Voice (talk-right) upon request via #openttd; make sure you are registered to NickServ before asking"
13:15:44  <frosch123> doesn't deleteing of storypages trigger deletion of the pagelements?
13:16:02  <frosch123> or will they reappear if you add a new page which happens to get the same id?
13:16:05  <Zuu> nope, but that may be a cleaner solution
13:16:36  <Zuu> they will re-appear if you happen to add a new page with that the same  id as the deleted page.
13:17:14  <Zuu> It caused me a lot of hard to reproduce bugs in NoCarGoal until I figured out why it happened :-)
13:56:31  <Zuu> frosch123: Is this destructor solution OK, or should that destructor become non-inline?
13:59:00  <frosch123> i guess add a "	if (CleaningPool()) return;
13:59:04  <frosch123> at the top
13:59:18  <frosch123> that should improve exiting a game
13:59:30  <frosch123> but maybe you need to readd the clean in the bankruptness case
13:59:51  <frosch123> (hmm, no, you do not delete all pages there, only those of the company)
14:00:17  <frosch123> (the return ofc after the free :)
14:07:36  *** Maraxus has joined
14:14:56  *** Maraxus has left
15:02:40  <Zuu> Patch updated to only remove page elements when the pool is not cleaning.
15:03:29  <frosch123> looks fine to me
15:17:18  *** LordAro has joined
15:17:18  *** ChanServ sets mode: +v LordAro
15:18:01  *** DorpsGek changes topic to "OpenTTD Dev Channel || Latest SVN: r25621 || Logs: || Voice (talk-right) upon request via #openttd; make sure you are registered to NickServ before asking"
15:48:58  *** DorpsGek changes topic to "OpenTTD Dev Channel || Latest SVN: r25622 || Logs: || Voice (talk-right) upon request via #openttd; make sure you are registered to NickServ before asking"
15:55:13  *** DorpsGek changes topic to "OpenTTD Dev Channel || Latest SVN: r25623 || Logs: || Voice (talk-right) upon request via #openttd; make sure you are registered to NickServ before asking"
16:47:21  <Rubidium> Zuu: (warnings)
16:58:05  <Zuu> Rubidium: Is it enough with a default: NOT_REACHED() to solve the warning about unused enums in switch or is it better to enumarate them all and also add a defalut case?
16:59:22  <Alberth> if the non-mentioned entries never happen, just add a default case, imho
17:00:44  <Alberth> hmm, does c++ now also need to have all enum values? :(
17:03:11  <Rubidium> Alberth: no, but the compiler wants to make sure you didn't make a mistake
17:03:13  <Zuu>  (not adding all enum values, only a default)
17:03:42  <Rubidium> Zuu: seems okay... lets compile test it
17:04:07  <Rubidium> yup, compile warnings are gone
17:08:45  <frosch123> Alberth: gcc has some weird heuristic there, it warns if two or so are missing, it does not warn of 15 are missing
17:09:19  <Alberth> joy :)
17:09:43  <frosch123> our OnClick and other Window functions usually do not warn
17:09:51  <frosch123> even though we handle only a view widgets
17:10:02  <frosch123> s/view/few/
17:10:03  <Alberth> well, it's better than Java, which requires by language spec a default case
17:10:41  *** DorpsGek changes topic to "OpenTTD Dev Channel || Latest SVN: r25624 || Logs: || Voice (talk-right) upon request via #openttd; make sure you are registered to NickServ before asking"
17:11:03  <Rubidium> frosch123: there we get an int passed
17:11:06  <Rubidium> not an enum
17:11:31  <Rubidium> it will start to warn if you template the shit out of it so it uses enums instead of ints for the selected widget
17:11:47  <frosch123> hmm, so i overinterpreted gcc :p
17:41:22  *** DorpsGek changes topic to "OpenTTD Dev Channel || Latest SVN: r25625 || Logs: || Voice (talk-right) upon request via #openttd; make sure you are registered to NickServ before asking"
18:08:54  *** Supercheese has joined
19:00:54  *** andythenorth has joined
19:00:54  *** ChanServ sets mode: +v andythenorth
19:01:13  <andythenorth> is there a secret room or something for fruit discussion?
19:01:47  <frosch123> no, my upload finishes in half an hour
19:01:56  <frosch123> then i need a test chicken
19:02:11  <andythenorth> I have 20Mbit fibre in my office
19:02:17  <andythenorth> not the fastest, but better than ADSL
19:02:24  <andythenorth> but not there until tomorrow
19:03:09  <frosch123> i also have instructions for instaling from scratch :p
19:03:16  <frosch123> but i doubt that will be faster :)
19:03:29  <Alberth> 1. don't try this at home :p
19:03:34  <andythenorth> does it require a lot of mysql connection stuff?
19:03:46  <frosch123> no mysql, only postgresql
19:04:07  <frosch123> no idea what "a lot" means
19:04:11  <frosch123> it does not run without :p
19:06:57  <andythenorth> bbl
19:07:01  *** andythenorth has quit IRC
19:09:18  *** Alberth has left
19:37:15  *** andythenorth has joined
19:37:15  *** ChanServ sets mode: +v andythenorth
19:49:31  <andythenorth> fastest way to produce a set containing the value of a property in multiple objects?
19:49:36  <andythenorth> objects are conveniently in a list
19:49:51  <andythenorth> oops wrong channel :P
19:50:09  <andythenorth> sorry
20:10:38  *** ntoskrnl has quit IRC
20:32:06  <andythenorth> step 1: have login at least do redirect to account index :P
20:32:36  <frosch123> yeah, noticed that, left it as execise :)
20:37:56  *** frosch123 has quit IRC
20:43:28  <andythenorth> didn't figure that out yet :P
20:43:48  <andythenorth> found lots of account methods, but nothing obvious for login
20:53:13  *** andythenorth has left
22:04:09  *** LordAro has quit IRC
22:41:38  *** Ristovski has quit IRC

Powered by YARRSTE version: svn-trunk