Greetings,

In globals-core.h, there is a small problem with the redefinition
of free to be ntop_safefree.  Specifically, the prototype of
ntop_safefree expects to have a void** pointer and the define
casts it to a single void*.  This poses no problem in straight C,
but if you're doing anything in C++, especially those close
to standards compliance like g++ 3.0.x, it will refuse to compile.
The solution is simple: just add the extra * to the define line. 
C doesn't care one way or the other, so it doesn't change anything
if you're not using C++.  A patch to do just that is provided below.

Thanks,
Tanner Lovelace
-- 
Tanner Lovelace | [EMAIL PROTECTED] | http://www.opennms.org/
--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--
GPG Fingerprint = AFD2 597F 4028 FFE2 B11A  4383 BE46 B4E1 26DC 03A3
--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--
 101010 - The Ultimate answer to Life, the Universe and Everything.


--- globals-core.h~     2002-05-07 18:19:51.000000000 -0400
+++ globals-core.h      2002-05-14 15:15:40.000000000 -0400
@@ -126,7 +126,7 @@
 extern char*          ntop_strdup(char *str, char* file, int line);
 extern void           ntop_free(void **ptr, char* file, int line);
 #else
-#define free(a)       ntop_safefree((void*)&(a), __FILE__, __LINE__)
+#define free(a)       ntop_safefree((void**)&(a), __FILE__, __LINE__)
 extern void           ntop_safefree(void **ptr, char* file, int line);
 #define malloc(sz)    ntop_safemalloc(sz, __FILE__, __LINE__)
 extern void*          ntop_safemalloc(unsigned int sz, char* file, int line);

_______________________________________________
Ntop-dev mailing list
[EMAIL PROTECTED]
http://listgateway.unipi.it/mailman/listinfo/ntop-dev

Reply via email to