Commit 060978e0 authored by Elliot Lee's avatar Elliot Lee Committed by Elliot Lee
Browse files

I submitted this patch twice to gtk-devel-list, and received no comments,



I submitted this patch twice to gtk-devel-list, and received no comments, so
am committing it.  Although not exhaustively tested, I have been using this
gtk+ for a week w/o problems, and I did read the code to ensure that nothing
ever writes to these data structures. If by chance people encounter SEGV's in
gtk+ code that is setting values in global data structures, this patch could
be a possible culprit.

1998-11-30  Elliot Lee  <sopwith@cuc.ml.org>

	* {gdk,gtk}/*.c: Make read-only data structures "static const" to
	allow them to be shared, mainly including (but not limited to) the
	GtkTypeInfo structures for each class.

	* gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
parent 58ca2448
1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
* {gdk,gtk}/*.c: Make read-only data structures "static const" to
allow them to be shared, mainly including (but not limited to) the
GtkTypeInfo structures for each class.
* gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
* gtk/gtknotebook.c (gtk_notebook_reorder_child):
......
1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
* {gdk,gtk}/*.c: Make read-only data structures "static const" to
allow them to be shared, mainly including (but not limited to) the
GtkTypeInfo structures for each class.
* gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
* gtk/gtknotebook.c (gtk_notebook_reorder_child):
......
1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
* {gdk,gtk}/*.c: Make read-only data structures "static const" to
allow them to be shared, mainly including (but not limited to) the
GtkTypeInfo structures for each class.
* gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
* gtk/gtknotebook.c (gtk_notebook_reorder_child):
......
1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
* {gdk,gtk}/*.c: Make read-only data structures "static const" to
allow them to be shared, mainly including (but not limited to) the
GtkTypeInfo structures for each class.
* gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
* gtk/gtknotebook.c (gtk_notebook_reorder_child):
......
1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
* {gdk,gtk}/*.c: Make read-only data structures "static const" to
allow them to be shared, mainly including (but not limited to) the
GtkTypeInfo structures for each class.
* gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
* gtk/gtknotebook.c (gtk_notebook_reorder_child):
......
1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
* {gdk,gtk}/*.c: Make read-only data structures "static const" to
allow them to be shared, mainly including (but not limited to) the
GtkTypeInfo structures for each class.
* gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
* gtk/gtknotebook.c (gtk_notebook_reorder_child):
......
1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
* {gdk,gtk}/*.c: Make read-only data structures "static const" to
allow them to be shared, mainly including (but not limited to) the
GtkTypeInfo structures for each class.
* gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
* gtk/gtknotebook.c (gtk_notebook_reorder_child):
......
......@@ -229,7 +229,7 @@ static gulong base_id;
static gint autorepeat;
#ifdef G_ENABLE_DEBUG
static GDebugKey gdk_debug_keys[] = {
static const GDebugKey gdk_debug_keys[] = {
{"events", GDK_DEBUG_EVENTS},
{"misc", GDK_DEBUG_MISC},
{"dnd", GDK_DEBUG_DND},
......@@ -1504,8 +1504,8 @@ gdk_pointer_grab (GdkWindow * window,
guint32 time)
{
/* From gdkwindow.c */
extern int nevent_masks;
extern int event_mask_table[];
extern const int nevent_masks;
extern const int event_mask_table[];
gint return_val;
GdkWindowPrivate *window_private;
......
......@@ -38,9 +38,9 @@ static GdkDevicePrivate *gdk_input_find_device (guint32 id);
/* Incorporate the specific routines depending on compilation options */
static GdkAxisUse gdk_input_core_axes[] = { GDK_AXIS_X, GDK_AXIS_Y };
static const GdkAxisUse gdk_input_core_axes[] = { GDK_AXIS_X, GDK_AXIS_Y };
static GdkDeviceInfo gdk_input_core_info =
static const GdkDeviceInfo gdk_input_core_info =
{
GDK_CORE_POINTER,
"Core Pointer",
......
......@@ -304,7 +304,7 @@ gdk_rgb_try_colormap (gint nr, gint ng, gint nb)
static gboolean
gdk_rgb_do_colormaps (void)
{
const gint sizes[][3] = {
static const gint sizes[][3] = {
/* { 6, 7, 6 }, */
{ 6, 6, 6 },
{ 6, 6, 5 },
......@@ -316,7 +316,7 @@ gdk_rgb_do_colormaps (void)
{ 3, 3, 3 },
{ 2, 2, 2 }
};
const gint n_sizes = sizeof(sizes) / (3 * sizeof(gint));
static const gint n_sizes = sizeof(sizes) / (3 * sizeof(gint));
gint i;
for (i = 0; i < n_sizes; i++)
......@@ -387,7 +387,7 @@ static guint32
gdk_rgb_score_visual (GdkVisual *visual)
{
guint32 quality, speed, sys, pseudo;
gchar* visual_names[] =
static const gchar* visual_names[] =
{
"static gray",
"grayscale",
......@@ -535,7 +535,7 @@ void
gdk_rgb_init (void)
{
gint i;
gint byte_order[1] = { 1 };
static const gint byte_order[1] = { 1 };
/* check endian sanity */
#if G_BYTE_ORDER == G_BIG_ENDIAN
......@@ -982,7 +982,7 @@ static const guchar DM[128][128] =
#define DM_WIDTH 8
#define DM_WIDTH_SHIFT 3
#define DM_HEIGHT 8
static guchar DM[8][8] =
static const guchar DM[8][8] =
{
{ 0, 32, 8, 40, 2, 34, 10, 42 },
{ 48, 16, 56, 24, 50, 18, 58, 26 },
......
......@@ -44,7 +44,7 @@ static gint navailable_types;
#ifdef G_ENABLE_DEBUG
static gchar* visual_names[] =
static const gchar* visual_names[] =
{
"static gray",
"grayscale",
......@@ -61,8 +61,8 @@ static GHashTable *visual_hash = NULL;
void
gdk_visual_init (void)
{
static gint possible_depths[7] = { 32, 24, 16, 15, 8, 4, 1 };
static GdkVisualType possible_types[6] =
static const gint possible_depths[7] = { 32, 24, 16, 15, 8, 4, 1 };
static const GdkVisualType possible_types[6] =
{
GDK_VISUAL_DIRECT_COLOR,
GDK_VISUAL_TRUE_COLOR,
......@@ -72,8 +72,8 @@ gdk_visual_init (void)
GDK_VISUAL_STATIC_GRAY
};
static gint npossible_depths = 7;
static gint npossible_types = 6;
static const gint npossible_depths = sizeof(possible_depths)/sizeof(gint);
static const gint npossible_types = sizeof(possible_types)/sizeof(GdkVisualType);
XVisualInfo *visual_list;
XVisualInfo visual_template;
......
......@@ -33,8 +33,7 @@
#include <X11/extensions/shape.h>
#endif
int nevent_masks = 20;
int event_mask_table[20] =
const int event_mask_table[20] =
{
ExposureMask,
PointerMotionMask,
......@@ -57,6 +56,7 @@ int event_mask_table[20] =
0, /* PROXIMTY_OUT */
SubstructureNotifyMask
};
const int nevent_masks = sizeof(event_mask_table)/sizeof(int);
static gboolean gdk_window_have_shape_ext (void);
......
......@@ -38,9 +38,9 @@ static GdkDevicePrivate *gdk_input_find_device (guint32 id);
/* Incorporate the specific routines depending on compilation options */
static GdkAxisUse gdk_input_core_axes[] = { GDK_AXIS_X, GDK_AXIS_Y };
static const GdkAxisUse gdk_input_core_axes[] = { GDK_AXIS_X, GDK_AXIS_Y };
static GdkDeviceInfo gdk_input_core_info =
static const GdkDeviceInfo gdk_input_core_info =
{
GDK_CORE_POINTER,
"Core Pointer",
......
......@@ -229,7 +229,7 @@ static gulong base_id;
static gint autorepeat;
#ifdef G_ENABLE_DEBUG
static GDebugKey gdk_debug_keys[] = {
static const GDebugKey gdk_debug_keys[] = {
{"events", GDK_DEBUG_EVENTS},
{"misc", GDK_DEBUG_MISC},
{"dnd", GDK_DEBUG_DND},
......@@ -1504,8 +1504,8 @@ gdk_pointer_grab (GdkWindow * window,
guint32 time)
{
/* From gdkwindow.c */
extern int nevent_masks;
extern int event_mask_table[];
extern const int nevent_masks;
extern const int event_mask_table[];
gint return_val;
GdkWindowPrivate *window_private;
......
......@@ -44,7 +44,7 @@ static gint navailable_types;
#ifdef G_ENABLE_DEBUG
static gchar* visual_names[] =
static const gchar* visual_names[] =
{
"static gray",
"grayscale",
......@@ -61,8 +61,8 @@ static GHashTable *visual_hash = NULL;
void
gdk_visual_init (void)
{
static gint possible_depths[7] = { 32, 24, 16, 15, 8, 4, 1 };
static GdkVisualType possible_types[6] =
static const gint possible_depths[7] = { 32, 24, 16, 15, 8, 4, 1 };
static const GdkVisualType possible_types[6] =
{
GDK_VISUAL_DIRECT_COLOR,
GDK_VISUAL_TRUE_COLOR,
......@@ -72,8 +72,8 @@ gdk_visual_init (void)
GDK_VISUAL_STATIC_GRAY
};
static gint npossible_depths = 7;
static gint npossible_types = 6;
static const gint npossible_depths = sizeof(possible_depths)/sizeof(gint);
static const gint npossible_types = sizeof(possible_types)/sizeof(GdkVisualType);
XVisualInfo *visual_list;
XVisualInfo visual_template;
......
......@@ -33,8 +33,7 @@
#include <X11/extensions/shape.h>
#endif
int nevent_masks = 20;
int event_mask_table[20] =
const int event_mask_table[20] =
{
ExposureMask,
PointerMotionMask,
......@@ -57,6 +56,7 @@ int event_mask_table[20] =
0, /* PROXIMTY_OUT */
SubstructureNotifyMask
};
const int nevent_masks = sizeof(event_mask_table)/sizeof(int);
static gboolean gdk_window_have_shape_ext (void);
......
......@@ -702,7 +702,7 @@ gboolean
gtk_accelerator_valid (guint keyval,
GdkModifierType modifiers)
{
guint invalid_accelerator_vals[] = {
static const guint invalid_accelerator_vals[] = {
GDK_BackSpace, GDK_Delete, GDK_KP_Delete,
GDK_Shift_L, GDK_Shift_R, GDK_Shift_Lock, GDK_Caps_Lock, GDK_ISO_Lock,
GDK_Control_L, GDK_Control_R, GDK_Meta_L, GDK_Meta_R,
......@@ -880,7 +880,7 @@ gtk_accelerator_parse (const gchar *accelerator,
}
else if (len >= 6 && is_modx (accelerator))
{
guint mod_vals[] = {
static const guint mod_vals[] = {
GDK_MOD1_MASK, GDK_MOD2_MASK, GDK_MOD3_MASK,
GDK_MOD4_MASK, GDK_MOD5_MASK
};
......
......@@ -57,7 +57,7 @@ gtk_accel_label_get_type (void)
if (!accel_label_type)
{
GtkTypeInfo accel_label_info =
static const GtkTypeInfo accel_label_info =
{
"GtkAccelLabel",
sizeof (GtkAccelLabel),
......
......@@ -41,7 +41,7 @@ gtk_adjustment_get_type (void)
if (!adjustment_type)
{
GtkTypeInfo adjustment_info =
static const GtkTypeInfo adjustment_info =
{
"GtkAdjustment",
sizeof (GtkAdjustment),
......
......@@ -50,7 +50,7 @@ gtk_alignment_get_type (void)
if (!alignment_type)
{
GtkTypeInfo alignment_info =
static const GtkTypeInfo alignment_info =
{
"GtkAlignment",
sizeof (GtkAlignment),
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment