ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/common/savestr.c
(Generate patch)

Comparing ray/src/common/savestr.c (file contents):
Revision 2.5 by greg, Sat Feb 22 02:07:22 2003 UTC vs.
Revision 2.10 by greg, Thu Mar 4 16:34:34 2004 UTC

# Line 18 | Line 18 | static const char      RCSid[] = "$Id$";
18   *  External symbols declared in standard.h
19   */
20  
21 < /* ====================================================================
22 < * The Radiance Software License, Version 1.0
23 < *
24 < * Copyright (c) 1990 - 2002 The Regents of the University of California,
25 < * through Lawrence Berkeley National Laboratory.   All rights reserved.
26 < *
27 < * Redistribution and use in source and binary forms, with or without
28 < * modification, are permitted provided that the following conditions
29 < * are met:
30 < *
31 < * 1. Redistributions of source code must retain the above copyright
32 < *         notice, this list of conditions and the following disclaimer.
33 < *
34 < * 2. Redistributions in binary form must reproduce the above copyright
35 < *       notice, this list of conditions and the following disclaimer in
36 < *       the documentation and/or other materials provided with the
37 < *       distribution.
38 < *
39 < * 3. The end-user documentation included with the redistribution,
40 < *           if any, must include the following acknowledgment:
41 < *             "This product includes Radiance software
42 < *                 (http://radsite.lbl.gov/)
43 < *                 developed by the Lawrence Berkeley National Laboratory
44 < *               (http://www.lbl.gov/)."
45 < *       Alternately, this acknowledgment may appear in the software itself,
46 < *       if and wherever such third-party acknowledgments normally appear.
47 < *
48 < * 4. The names "Radiance," "Lawrence Berkeley National Laboratory"
49 < *       and "The Regents of the University of California" must
50 < *       not be used to endorse or promote products derived from this
51 < *       software without prior written permission. For written
52 < *       permission, please contact [email protected].
53 < *
54 < * 5. Products derived from this software may not be called "Radiance",
55 < *       nor may "Radiance" appear in their name, without prior written
56 < *       permission of Lawrence Berkeley National Laboratory.
57 < *
58 < * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
59 < * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
60 < * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
61 < * DISCLAIMED.   IN NO EVENT SHALL Lawrence Berkeley National Laboratory OR
62 < * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
63 < * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
64 < * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
65 < * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
66 < * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
67 < * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
68 < * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
69 < * SUCH DAMAGE.
70 < * ====================================================================
71 < *
72 < * This software consists of voluntary contributions made by many
73 < * individuals on behalf of Lawrence Berkeley National Laboratory.   For more
74 < * information on Lawrence Berkeley National Laboratory, please see
75 < * <http://www.lbl.gov/>.
76 < */
21 > #include "copyright.h"
22  
23 + #include <string.h>
24 + #include <stdlib.h>
25 +
26 + #include "rtmisc.h"
27 + #include "rterror.h"
28 + #include "rtio.h"
29 +
30   #ifndef  NHASH
31 < #define  NHASH          509             /* hash table size (prime!) */
31 > #define  NHASH          2039            /* hash table size (prime!) */
32   #endif
33  
34   typedef struct s_head {
# Line 88 | Line 40 | static S_HEAD  *stab[NHASH];
40  
41   #define  hash(s)        (shash(s)%NHASH)
42  
91 extern char  *savestr(), *strcpy(), *malloc();
92
93 #define  NULL           0
94
43   #define  string(sp)     ((char *)((sp)+1))
44  
45   #define  salloc(str)    (S_HEAD *)malloc(sizeof(S_HEAD)+1+strlen(str))
# Line 100 | Line 48 | extern char  *savestr(), *strcpy(), *malloc();
48  
49  
50   char *
51 < savestr(str)                            /* save a string */
104 < char  *str;
51 > savestr(char *str)                              /* save a string */
52   {
53          register int  hval;
54          register S_HEAD  *sp;
# Line 127 | Line 74 | char  *str;
74  
75  
76   void
77 < freestr(s)                              /* free a string */
131 < char  *s;
77 > freestr(char *s)                                /* free a string */
78   {
79          int  hval;
80          register S_HEAD  *spl, *sp;
# Line 151 | Line 97 | char  *s;
97  
98  
99   int
100 < shash(s)
155 < register char  *s;
100 > shash(register char  *s)
101   {
102          register int  h = 0;
103  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines