From f8c9ca8c8c9e3de9dad16c6bad1b4a7151ffd2b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?= <grubba@grubba.org> Date: Mon, 1 Jun 1998 22:15:09 +0200 Subject: [PATCH] Added macro MAKE_CONSTANT_SHARED_STRING(), which push_contant_text() expects. Rev: src/stralloc.h:1.11 --- src/stralloc.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/stralloc.h b/src/stralloc.h index b7faffdde6..c27e3a3372 100644 --- a/src/stralloc.h +++ b/src/stralloc.h @@ -36,6 +36,7 @@ struct pike_string *debug_findstring(const struct pike_string *foo); #define reference_shared_string(s) do { struct pike_string *S_=(s); debug_malloc_touch(S_); S_->refs++; }while(0) #define copy_shared_string(to,s) do { struct pike_string *S_=(to)=(s); debug_malloc_touch(S_); S_->refs++; }while(0) + #else #define reference_shared_string(s) (s)->refs++ @@ -44,6 +45,11 @@ struct pike_string *debug_findstring(const struct pike_string *foo); #endif +#define MAKE_CONSTANT_SHARED_STRING(var, text) \ + do { static struct pike_string *str_; \ + if(!str_) str_=make_shared_string((text)); \ + copy_shared_string((var), str_); \ + }while(0) /* Prototypes begin here */ struct pike_string *binary_findstring(const char *foo, INT32 l); -- GitLab