Merge lp:~smspillaz/compiz-core/compiz-core.option-variant-type-fixes into lp:compiz-core/0.9.5
Proposed by
Sam Spilsbury
Status: | Merged |
---|---|
Merged at revision: | 2965 |
Proposed branch: | lp:~smspillaz/compiz-core/compiz-core.option-variant-type-fixes |
Merge into: | lp:compiz-core/0.9.5 |
Diff against target: |
372 lines (+243/-38) 4 files modified
include/core/abiversion.h (+1/-1) include/core/option.h (+115/-34) src/option.cpp (+1/-1) src/option/tests/option.cpp (+126/-2) |
To merge this branch: | bzr merge lp:~smspillaz/compiz-core/compiz-core.option-variant-type-fixes |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Daniel van Vugt | Needs Fixing | ||
Alan Griffiths | Approve | ||
Thomas Voß | Approve | ||
Review via email: mp+90242@code.launchpad.net |
Description of the change
Fixes up a bunch of boost::variant edge cases
1. Fixes a case where const char * would be converted to bool, add a wrapper to ensure it gets converted to CompString
2. Fixes a case where unsigned short [] and unsigned short * would get converted to bool also, add a wrapper to ensure they are stored correctly
3. Adds some template specializations for the above, especially the reading part.
To post a comment you must log in.
Looks OK to me. Unit tests are passing and have been extended to check for the edge cases together with boost::variant. Nevertheless, the modelling of a color should be adjusted to an (unambiguous) struct in the future.