X-Git-Url: https://code.citadel.org/?p=citadel.git;a=blobdiff_plain;f=webcit%2Fpreferences.c;h=f929fe72db4c7e027a741e156a439b30ad2434dd;hp=1891beae4cfe1c41294904bb7e35067104aa8ba6;hb=ac50491fa5855cef50dcdcb2e1ce896438e63c34;hpb=e2eda8ec9effbdb130ea9a1c0b2f1089ab4cb069 diff --git a/webcit/preferences.c b/webcit/preferences.c index 1891beae4..f929fe72d 100644 --- a/webcit/preferences.c +++ b/webcit/preferences.c @@ -868,11 +868,20 @@ int ConditionalPreference(StrBuf *Target, WCTemplputParams *TP) if (!HAVE_PARAM(3)) { return 1; } - else if (TP->Tokens->Params[3]->Type == TYPE_STR) - return ((TP->Tokens->Params[3]->len == StrLength(Pref)) && - (strcmp(TP->Tokens->Params[3]->Start, ChrPtr(Pref)) == 0)); + else if (IS_NUMBER(TP->Tokens->Params[3]->Type)) + { + return StrTol(Pref) == GetTemplateTokenNumber (Target, TP, 3, 0); + } else - return (StrTol(Pref) == TP->Tokens->Params[3]->lvalue); + { + const char *pch; + long len; + + GetTemplateTokenString(Target, TP, 3, &pch, &len); + + return ((len == StrLength(Pref)) && + (strcmp(pch, ChrPtr(Pref)) == 0)); + } } int ConditionalHasPreference(StrBuf *Target, WCTemplputParams *TP)