[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Avoid over-clever trick `if (called++) return;'
From: |
Martin Buchholz |
Subject: |
Avoid over-clever trick `if (called++) return;' |
Date: |
Sat, 18 Nov 2000 16:02:22 +0900 (JST) |
This avoids a bug after 2**32 shared libraries have been loaded, when
`called' will wrap.
It might also save a cycle (but on every program execution).
Index: ChangeLog
===================================================================
RCS file: /cvs/libc/ChangeLog,v
retrieving revision 1.4281
diff -u -w -U0 -r1.4281 ChangeLog
--- ChangeLog 2000/09/08 08:41:44 1.4281
+++ ChangeLog 2000/11/18 06:58:36
@@ -0,0 +1,11 @@
+2000-11-18 Martin Buchholz <address@hidden>
+
+ * csu/gmon-start.c (__gmon_start__):
+ Avoid over-clever trick `if (called++) return;'
+
Index: csu/gmon-start.c
===================================================================
RCS file: /cvs/libc/csu/gmon-start.c,v
retrieving revision 1.7
diff -u -w -r1.7 gmon-start.c
--- csu/gmon-start.c 2000/04/21 03:38:54 1.7
+++ csu/gmon-start.c 2000/11/18 06:58:37
@@ -48,8 +48,10 @@
into every shared library, each of their init functions will call us. */
static int called;
- if (called++)
+ if (called)
return;
+
+ called = 1;
#endif
/* Start keeping profiling records. */
- Avoid over-clever trick `if (called++) return;',
Martin Buchholz <=