From: Dr. M. B. <dr....@t-...> - 2014-08-29 06:39:06
|
Hello Erik, Hello to the Rest, In ORUIManager - relayBaseToken theres a special Case for the BadenHexUpgrade where the Codes sorts the Tokens. This apparently has sideeffects for games that have also two stops with at least one stop tokened. For my eye the Collections.sort tries to sort an Object (ORUiManager) vs the occupied Stop at least in the context of this save game 1856. As a workaround one can disable that check for any game besides 1835, and then the game continues as expected. But i would love to have you (Erik) a deeper look at things because you orginally coded that part and i'll probably miss the clues here :) Regards, Martin |
From: Erik V. <eri...@xs...> - 2014-08-29 12:58:57
|
Hello Martin, The probable cause is that the CGR has no home hexes, and that getHomeHexes() in such a case returns null instead of an empty array. Most uses of getHomeHexes() does not check for this, so more bugs could be imminent. I would suggest to initialize PublicCompany.homeHexes as an empty array instead of null. A quick check showed me that there is at least one place where a check for null is done (in MapManager), which check will become redundant after my proposed change. I don't know if there are any places where the code positively relies on the result being null; you should definitely check all uses of getHomeHexes(). Best regards, Erik > -----Original Message----- > From: Dr. Martin Brumm [mailto:dr....@t-...] > Sent: Friday, August 29, 2014 8:39 AM > To: Erik Vos; Stefan Frey; Development list for Rails: an 18xx game > Subject: Bug in relayBase Token reported by Pieter Lust > Importance: High > > Hello Erik, Hello to the Rest, > > In ORUIManager - relayBaseToken theres a special Case for the > BadenHexUpgrade where the Codes sorts the Tokens. This apparently has > sideeffects for games that have also two stops with at least one stop > tokened. > > For my eye the Collections.sort tries to sort an Object (ORUiManager) vs the > occupied Stop at least in the context of this save game 1856. > > As a workaround one can disable that check for any game besides 1835, and > then the game continues as expected. > > But i would love to have you (Erik) a deeper look at things because you > orginally coded that part and i'll probably miss the clues here :) > > Regards, > Martin > |
From: Stefan F. <ste...@we...> - 2014-08-29 14:22:50
|
Erik and Martin: this makes sense. I will port this to Rails 2.0, as I am currently to my final changes to have the new tile and token lay UI for the new alpha release. Stefan On 08/29/2014 02:58 PM, Erik Vos wrote: > Hello Martin, > > The probable cause is that the CGR has no home hexes, and that getHomeHexes() in such a case returns null instead of an empty array. > > Most uses of getHomeHexes() does not check for this, so more bugs could be imminent. > I would suggest to initialize PublicCompany.homeHexes as an empty array instead of null. > A quick check showed me that there is at least one place where a check for null is done (in MapManager), which check will become redundant after my proposed change. > I don't know if there are any places where the code positively relies on the result being null; you should definitely check all uses of getHomeHexes(). > > Best regards, > Erik > >> -----Original Message----- >> From: Dr. Martin Brumm [mailto:dr....@t-...] >> Sent: Friday, August 29, 2014 8:39 AM >> To: Erik Vos; Stefan Frey; Development list for Rails: an 18xx game >> Subject: Bug in relayBase Token reported by Pieter Lust >> Importance: High >> >> Hello Erik, Hello to the Rest, >> >> In ORUIManager - relayBaseToken theres a special Case for the >> BadenHexUpgrade where the Codes sorts the Tokens. This apparently has >> sideeffects for games that have also two stops with at least one stop >> tokened. >> >> For my eye the Collections.sort tries to sort an Object (ORUiManager) vs the >> occupied Stop at least in the context of this save game 1856. >> >> As a workaround one can disable that check for any game besides 1835, and >> then the game continues as expected. >> >> But i would love to have you (Erik) a deeper look at things because you >> orginally coded that part and i'll probably miss the clues here :) >> >> Regards, >> Martin >> > > |
From: Dr. M. B. <dr....@t-...> - 2014-08-29 15:54:19
|
Hi all, of course that made sense and was easy to fix -> Thank you Erik. As usual your knowhow was much up to the point than me having found an easy way out :) Fix pushed to the repo, release will have to wait till i am back in Germany at my usual PC as i dont trust my Skills with the Mac enough yet to get a release without fault out of the door. Alternatively either Erik or Stefan could you do the release ? (out of the rails.1.8.x branch). Regards, Martin Am 29.08.14 um 16:22 schrieb Stefan Frey: > Erik and Martin: > this makes sense. > I will port this to Rails 2.0, as I am currently to my final changes to > have the new tile and token lay UI for the new alpha release. > Stefan > > On 08/29/2014 02:58 PM, Erik Vos wrote: >> Hello Martin, >> >> The probable cause is that the CGR has no home hexes, and that getHomeHexes() in such a case returns null instead of an empty array. >> >> Most uses of getHomeHexes() does not check for this, so more bugs could be imminent. >> I would suggest to initialize PublicCompany.homeHexes as an empty array instead of null. >> A quick check showed me that there is at least one place where a check for null is done (in MapManager), which check will become redundant after my proposed change. >> I don't know if there are any places where the code positively relies on the result being null; you should definitely check all uses of getHomeHexes(). >> >> Best regards, >> Erik >> >>> -----Original Message----- >>> From: Dr. Martin Brumm [mailto:dr....@t-...] >>> Sent: Friday, August 29, 2014 8:39 AM >>> To: Erik Vos; Stefan Frey; Development list for Rails: an 18xx game >>> Subject: Bug in relayBase Token reported by Pieter Lust >>> Importance: High >>> >>> Hello Erik, Hello to the Rest, >>> >>> In ORUIManager - relayBaseToken theres a special Case for the >>> BadenHexUpgrade where the Codes sorts the Tokens. This apparently has >>> sideeffects for games that have also two stops with at least one stop >>> tokened. >>> >>> For my eye the Collections.sort tries to sort an Object (ORUiManager) vs the >>> occupied Stop at least in the context of this save game 1856. >>> >>> As a workaround one can disable that check for any game besides 1835, and >>> then the game continues as expected. >>> >>> But i would love to have you (Erik) a deeper look at things because you >>> orginally coded that part and i'll probably miss the clues here :) >>> >>> Regards, >>> Martin >>> >> > ------------------------------------------------------------------------------ > Slashdot TV. > Video for Nerds. Stuff that matters. > http://tv.slashdot.org/ > _______________________________________________ > Rails-devel mailing list > Rai...@li... > https://lists.sourceforge.net/lists/listinfo/rails-devel |