diff options
Diffstat (limited to 'src/gmdocument.c')
-rw-r--r-- | src/gmdocument.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/gmdocument.c b/src/gmdocument.c index 884f8c07..e3c06d49 100644 --- a/src/gmdocument.c +++ b/src/gmdocument.c | |||
@@ -1710,9 +1710,12 @@ void setThemeSeed_GmDocument(iGmDocument *d, const iBlock *seed) { | |||
1710 | } | 1710 | } |
1711 | 1711 | ||
1712 | void makePaletteGlobal_GmDocument(const iGmDocument *d) { | 1712 | void makePaletteGlobal_GmDocument(const iGmDocument *d) { |
1713 | if (d->isPaletteValid) { | 1713 | if (!d->isPaletteValid) { |
1714 | memcpy(get_Root()->tmPalette, d->palette, sizeof(d->palette)); | 1714 | /* Recompute the palette since it's needed now. */ |
1715 | setThemeSeed_GmDocument((iGmDocument *) d, urlThemeSeed_String(&d->url)); | ||
1715 | } | 1716 | } |
1717 | iAssert(d->isPaletteValid); | ||
1718 | memcpy(get_Root()->tmPalette, d->palette, sizeof(d->palette)); | ||
1716 | } | 1719 | } |
1717 | 1720 | ||
1718 | void invalidatePalette_GmDocument(iGmDocument *d) { | 1721 | void invalidatePalette_GmDocument(iGmDocument *d) { |
@@ -1885,6 +1888,7 @@ static void normalize_GmDocument(iGmDocument *d) { | |||
1885 | void setUrl_GmDocument(iGmDocument *d, const iString *url) { | 1888 | void setUrl_GmDocument(iGmDocument *d, const iString *url) { |
1886 | url = canonicalUrl_String(url); | 1889 | url = canonicalUrl_String(url); |
1887 | set_String(&d->url, url); | 1890 | set_String(&d->url, url); |
1891 | setThemeSeed_GmDocument(d, urlThemeSeed_String(url)); | ||
1888 | iUrl parts; | 1892 | iUrl parts; |
1889 | init_Url(&parts, url); | 1893 | init_Url(&parts, url); |
1890 | setRange_String(&d->localHost, parts.host); | 1894 | setRange_String(&d->localHost, parts.host); |