more silly bug fixes for bugs I just introduced a few hours ago

git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9103 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
Linas Vepstas 2003-08-17 06:37:24 +00:00
parent 9b25ec1ecc
commit b03c186bc1

View File

@ -509,7 +509,7 @@ gnc_commodity_destroy(gnc_commodity * cm)
/* Set through accessor functions */
cm->quote_source = NULL;
g_cache_remove(str_cache, cm->quote_tz);
if (cm->quote_tz) g_cache_remove(str_cache, cm->quote_tz);
cm->quote_tz = NULL;
/* Automatically generated */
@ -550,7 +550,9 @@ gnc_commodity_clone(gnc_commodity *src)
dest->mark = 0;
dest->quote_flag = src->quote_flag;
dest->quote_source = g_cache_insert(str_cache, src->quote_source);
gnc_commodity_set_quote_source (dest, gnc_commodity_get_quote_source (src));
if (src->quote_tz)
dest->quote_tz = g_cache_insert(str_cache, src->quote_tz);
reset_printname(dest);
@ -807,12 +809,10 @@ gnc_commodity_set_quote_flag(gnc_commodity *cm, const gboolean flag)
void
gnc_commodity_set_quote_source(gnc_commodity *cm, gnc_quote_source *src)
{
GCache *str_cache = gnc_engine_get_string_cache ();
ENTER ("(cm=%p, src=%p(%s))", cm, src, src ? src->internal_name : "unknown");
if(!cm) return;
g_cache_remove(str_cache, cm->quote_source);
cm->quote_source = g_cache_insert(str_cache, src);
cm->quote_source = src;
LEAVE(" ");
}
@ -828,8 +828,11 @@ gnc_commodity_set_quote_tz(gnc_commodity *cm, const char *tz)
if(!cm) return;
if (cm->quote_tz)
{
g_cache_remove(str_cache, cm->quote_tz);
if (cm->quote_tz) cm->quote_tz = NULL;
cm->quote_tz = NULL;
}
if (tz && *tz) cm->quote_tz = g_cache_insert(str_cache, (gpointer)tz);