Fossil SCM
Add db_unprotect()/db_protect_pop() to /setup_skin_admin when the user selects one of the builtin skins to fix problem reported at [https://fossil-scm.org/forum/forumpost/72a1db2bdc | /forumpost/72a1db2bdc].
Commit
37c290597dc42728d4fa4d71906c3b6ab5cbefbde2300a7e6f5a9885b469bda1
Parent
f83c4fa41d92029…
1 file changed
+4
+4
| --- src/skins.c | ||
| +++ src/skins.c | ||
| @@ -545,18 +545,22 @@ | ||
| 545 | 545 | seen = 0; |
| 546 | 546 | for(i=0; i<count(aBuiltinSkin); i++){ |
| 547 | 547 | if( fossil_strcmp(aBuiltinSkin[i].zDesc, z)==0 ){ |
| 548 | 548 | seen = 1; |
| 549 | 549 | zCurrent = aBuiltinSkin[i].zSQL; |
| 550 | + db_unprotect(PROTECT_CONFIG); | |
| 550 | 551 | db_multi_exec("%s", zCurrent/*safe-for-%s*/); |
| 552 | + db_protect_pop(); | |
| 551 | 553 | break; |
| 552 | 554 | } |
| 553 | 555 | } |
| 554 | 556 | if( !seen ){ |
| 555 | 557 | zName = skinVarName(z,0); |
| 556 | 558 | zCurrent = db_get(zName, 0); |
| 559 | + db_unprotect(PROTECT_CONFIG); | |
| 557 | 560 | db_multi_exec("%s", zCurrent/*safe-for-%s*/); |
| 561 | + db_protect_pop(); | |
| 558 | 562 | } |
| 559 | 563 | } |
| 560 | 564 | } |
| 561 | 565 | |
| 562 | 566 | style_header("Skins"); |
| 563 | 567 |
| --- src/skins.c | |
| +++ src/skins.c | |
| @@ -545,18 +545,22 @@ | |
| 545 | seen = 0; |
| 546 | for(i=0; i<count(aBuiltinSkin); i++){ |
| 547 | if( fossil_strcmp(aBuiltinSkin[i].zDesc, z)==0 ){ |
| 548 | seen = 1; |
| 549 | zCurrent = aBuiltinSkin[i].zSQL; |
| 550 | db_multi_exec("%s", zCurrent/*safe-for-%s*/); |
| 551 | break; |
| 552 | } |
| 553 | } |
| 554 | if( !seen ){ |
| 555 | zName = skinVarName(z,0); |
| 556 | zCurrent = db_get(zName, 0); |
| 557 | db_multi_exec("%s", zCurrent/*safe-for-%s*/); |
| 558 | } |
| 559 | } |
| 560 | } |
| 561 | |
| 562 | style_header("Skins"); |
| 563 |
| --- src/skins.c | |
| +++ src/skins.c | |
| @@ -545,18 +545,22 @@ | |
| 545 | seen = 0; |
| 546 | for(i=0; i<count(aBuiltinSkin); i++){ |
| 547 | if( fossil_strcmp(aBuiltinSkin[i].zDesc, z)==0 ){ |
| 548 | seen = 1; |
| 549 | zCurrent = aBuiltinSkin[i].zSQL; |
| 550 | db_unprotect(PROTECT_CONFIG); |
| 551 | db_multi_exec("%s", zCurrent/*safe-for-%s*/); |
| 552 | db_protect_pop(); |
| 553 | break; |
| 554 | } |
| 555 | } |
| 556 | if( !seen ){ |
| 557 | zName = skinVarName(z,0); |
| 558 | zCurrent = db_get(zName, 0); |
| 559 | db_unprotect(PROTECT_CONFIG); |
| 560 | db_multi_exec("%s", zCurrent/*safe-for-%s*/); |
| 561 | db_protect_pop(); |
| 562 | } |
| 563 | } |
| 564 | } |
| 565 | |
| 566 | style_header("Skins"); |
| 567 |