#include "lwlib-utils.h"
#include <X11/StringDefs.h>
-#if defined(__GNUC__) && !defined(alloca)
-#define alloca __builtin_alloca
-#endif
-
-#if ((!__GNUC__) && !defined(__hpux)) && !defined(_AIX)
-#include <alloca.h>
-#endif
-
-#if defined(_AIX)
-#pragma alloca
-#endif
-
#if defined (USE_LUCID)
#include "lwlib-Xlw.h"
#endif
static void
instanciate_widget_instance (/* widget_instance* instance */);
+lwlib_memset (address, value, length)
+ char *address;
+ int value;
+ int length;
+{
+ int i;
+
+ for (i = 0; i < length; i++)
+ address[i] = value;
+}
+
+lwlib_bcopy (from, to, length)
+ char *from;
+ char *to;
+ int length;
+{
+ int i;
+
+ for (i = 0; i < length; i++)
+ to[i] = from[i];
+}
\f/* utility functions for widget_instance and widget_info */
char *
safe_strdup (s)
wv = (widget_value *) malloc (sizeof (widget_value));
malloc_cpt++;
}
- memset (wv, 0, sizeof (widget_value));
+ lwlib_memset (wv, 0, sizeof (widget_value));
return wv;
}
safe_free_str (info->type);
safe_free_str (info->name);
free_widget_value_tree (info->val);
- memset ((void*)info, 0xDEADBEEF, sizeof (widget_info));
+ lwlib_memset ((void*)info, 0xDEADBEEF, sizeof (widget_info));
free (info);
}
free_widget_instance (instance)
widget_instance* instance;
{
- memset ((void*)instance, 0xDEADBEEF, sizeof (widget_instance));
+ lwlib_memset ((void*)instance, 0xDEADBEEF, sizeof (widget_instance));
free (instance);
}
else
{
int length = strlen (name) + 2;
- char* real_name = (char *) alloca (length);
+ char* real_name = (char *) xmalloc (length);
real_name [0] = '*';
strcpy (real_name + 1, name);
widget = XtNameToWidget (instance->widget, real_name);
+
+ free (real_name);
}
return widget;
}