#include "gtkhslaprivate.h"
#include "gtkstylepropertyprivate.h"
#include "gtkstyleproperties.h"
-#include "gtksymboliccolorprivate.h"
#include "gtkwin32themeprivate.h"
typedef enum {
GtkCssDependencies unused;
GtkCssValue *value;
- g_return_val_if_fail (color != NULL, FALSE);
- g_return_val_if_fail (provider == NULL || GTK_IS_STYLE_PROVIDER_PRIVATE (provider), FALSE);
- g_return_val_if_fail (current != NULL, FALSE);
+ g_return_val_if_fail (color != NULL, NULL);
+ g_return_val_if_fail (provider == NULL || GTK_IS_STYLE_PROVIDER_PRIVATE (provider), NULL);
+ g_return_val_if_fail (current != NULL, NULL);
if (dependencies == NULL)
dependencies = &unused;
*dependencies = 0;
- value = NULL;
switch (color->type)
{
case COLOR_TYPE_LITERAL:
}
break;
default:
+ value = NULL;
g_assert_not_reached ();
}
- if (value != NULL)
+ if (color->last_value != NULL &&
+ _gtk_css_value_equal (color->last_value, value))
{
- if (color->last_value != NULL &&
- _gtk_css_value_equal (color->last_value, value))
- {
- _gtk_css_value_unref (value);
- value = _gtk_css_value_ref (color->last_value);
- }
- else
- {
- if (color->last_value != NULL)
- _gtk_css_value_unref (color->last_value);
- color->last_value = _gtk_css_value_ref (value);
- }
+ _gtk_css_value_unref (value);
+ value = _gtk_css_value_ref (color->last_value);
+ }
+ else
+ {
+ if (color->last_value != NULL)
+ _gtk_css_value_unref (color->last_value);
+ color->last_value = _gtk_css_value_ref (value);
}
- _gtk_css_rgba_value_get_rgba (value);
return value;
}