From 7f4b7c48e87313dc1be4f4895e182a58e8c55af7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sat, 19 Jan 2019 18:32:00 +0100 Subject: cssparser: Make _gtk_css_parser_try a macro We almost always pass a constant string to it, so use a macro and try to trick the compiler into evaluating the 2(!) strlen() calls at compile time. --- gtk/gtkcssparserprivate.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'gtk/gtkcssparserprivate.h') diff --git a/gtk/gtkcssparserprivate.h b/gtk/gtkcssparserprivate.h index 5bc2ad691b..3fb30f9136 100644 --- a/gtk/gtkcssparserprivate.h +++ b/gtk/gtkcssparserprivate.h @@ -66,8 +66,10 @@ gboolean _gtk_css_parser_is_string (GtkCssParser *parser * however is fine to call if you don’t know yet if the token is a foo or a bar, * you can _try_bar() if try_foo() failed. */ -gboolean _gtk_css_parser_try (GtkCssParser *parser, +#define _gtk_css_parser_try(p, s, skip) (gtk_css_parser_try_len (p, s, strlen(s), skip)) +gboolean gtk_css_parser_try_len (GtkCssParser *parser, const char *string, + gsize string_len, gboolean skip_whitespace); char * _gtk_css_parser_try_ident (GtkCssParser *parser, gboolean skip_whitespace); -- cgit v1.2.1