Code looks good in principle, but haven't tested yet whether it really works as 
intended.

Two minor nits:
1) see diff comment
2) All the new lines (except when they were copied over) are indented with 
spaces instead of tabs.


Diff comments:

> === modified file 'src/logic/map_objects/tribes/building.cc'
> --- src/logic/map_objects/tribes/building.cc  2018-09-23 11:10:56 +0000
> +++ src/logic/map_objects/tribes/building.cc  2018-11-16 06:07:58 +0000
> @@ -151,9 +156,9 @@
>                       return_enhanced_ =
>                          
> Buildcost(table.get_table("return_on_dismantle_on_enhanced"), 
> egbase_.tribes());
>               } catch (const WException& e) {
> -                     throw wexception("An enhanced building must define 
> \"enhancement_cost\""
> +                     throw wexception("The enhanced building '%s' must 
> define \"enhancement_cost\""

This message is (and was before) not really related to this catch. If this 
catch block is reached then either because the other key 
("return_on_dismantle_on_enhanced") wasn't defined or because the Buildcost 
constructor threw when trying to read one of the table.

I think you should just get rid of the whole try-catch here and do it the same 
way you already did in the "buildcost" part above, i.e., check if the second 
key ("return_on_dismantle_on_enhanced") is defined and throw if not, but don't 
actually catch any exceptions. The Buildcost constructor will throw with a 
proper message anyway if it fails, no need to catch that and throw again with a 
message that is possibly even unrelated.

>                                        "and 
> \"return_on_dismantle_on_enhanced\": %s",
> -                                      e.what());
> +                                      name().c_str(), e.what());
>               }
>       }
>  


-- 
https://code.launchpad.net/~widelands-dev/widelands/empire04_unused_key_return_on_dismantle_no_ui/+merge/358305
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/empire04_unused_key_return_on_dismantle_no_ui.

_______________________________________________
Mailing list: https://launchpad.net/~widelands-dev
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp

Reply via email to