ruby-changes:17510
From: nobu <ko1@a...>
Date: Sat, 16 Oct 2010 10:15:48 +0900 (JST)
Subject: [ruby-changes:17510] Ruby:r29515 (trunk): * ext/sdbm/_sdbm.c (SEEDUPS, BADMESS): make settable using command
nobu 2010-10-16 10:06:13 +0900 (Sat, 16 Oct 2010) New Revision: 29515 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=29515 Log: * ext/sdbm/_sdbm.c (SEEDUPS, BADMESS): make settable using command line options. * ext/sdbm/_sdbm.c (makroom): suppress unused result warning. * ext/sdbm/extconf.rb: disable BADMESS, a library should not emit messages directly. Modified files: trunk/ChangeLog trunk/ext/sdbm/_sdbm.c trunk/ext/sdbm/extconf.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 29514) +++ ChangeLog (revision 29515) @@ -1,3 +1,13 @@ +Sat Oct 16 10:06:08 2010 Nobuyoshi Nakada <nobu@r...> + + * ext/sdbm/_sdbm.c (SEEDUPS, BADMESS): make settable using command + line options. + + * ext/sdbm/_sdbm.c (makroom): suppress unused result warning. + + * ext/sdbm/extconf.rb: disable BADMESS, a library should not emit + messages directly. + Sat Oct 16 08:39:03 2010 Nobuyoshi Nakada <nobu@r...> * dln.c (dln_strerror): get English message first, instead of Index: ext/sdbm/_sdbm.c =================================================================== --- ext/sdbm/_sdbm.c (revision 29514) +++ ext/sdbm/_sdbm.c (revision 29515) @@ -39,9 +39,14 @@ * important tuning parms (hah) */ -#define SEEDUPS /* always detect duplicates */ -#define BADMESS /* generate a message for worst case: +#ifndef SEEDUPS +#define SEEDUPS 1 /* always detect duplicates */ +#endif +#ifndef BADMESS +#define BADMESS 1 /* generate a message for worst case: cannot make room after SPLTMAX splits */ +#endif + /* * misc */ @@ -67,7 +72,7 @@ static int chkpage proto((char *)); static datum getnkey proto((char *, int)); static void splpage proto((char *, char *, long)); -#ifdef SEEDUPS +#if SEEDUPS static int duppair proto((char *, datum)); #endif @@ -302,7 +307,7 @@ */ if (flags == DBM_REPLACE) (void) delpair(db->pagbuf, key); -#ifdef SEEDUPS +#if SEEDUPS else if (duppair(db->pagbuf, key)) return 1; #endif @@ -421,8 +426,8 @@ * if we are here, this is real bad news. After SPLTMAX splits, * we still cannot fit the key. say goodnight. */ -#ifdef BADMESS - (void) write(2, "sdbm: cannot insert after SPLTMAX attempts.\n", 44); +#if BADMESS + (void) (write(2, "sdbm: cannot insert after SPLTMAX attempts.\n", 44) < 0); #endif return 0; @@ -698,7 +703,7 @@ return val; } -#ifdef SEEDUPS +#if SEEDUPS static int duppair(char *pag, datum key) { Index: ext/sdbm/extconf.rb =================================================================== --- ext/sdbm/extconf.rb (revision 29514) +++ ext/sdbm/extconf.rb (revision 29515) @@ -1,3 +1,4 @@ require 'mkmf' +$defs << "-D""BADMESS=0" create_makefile("sdbm") -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/