comparison Wnn/jserver/mknode1.c @ 25:466fe6732d8d

- fixed more NULL pointer related errata - suppress warnings
author Yoshiki Yazawa <yaz@honeyplanet.jp>
date Sat, 06 Mar 2010 04:37:31 +0900
parents bbc77ca4def5
children
comparison
equal deleted inserted replaced
24:becc60787557 25:466fe6732d8d
83 83
84 void 84 void
85 free_area (list) 85 free_area (list)
86 register struct free_list *list; 86 register struct free_list *list;
87 { 87 {
88 if (list == 0) 88 if (list == NULL)
89 return; 89 return;
90 free_area (list->lnk); 90 free_area (list->lnk);
91 free (list); 91 free (list);
92 } 92 }
93 93
101 101
102 free_sbn_top = wk_ptr = (struct SYO_BNSETSU *) ((char *) list + sizeof (struct free_list)); 102 free_sbn_top = wk_ptr = (struct SYO_BNSETSU *) ((char *) list + sizeof (struct free_list));
103 103
104 for (n = list->num - 1; n > 0; wk_ptr++, n--) 104 for (n = list->num - 1; n > 0; wk_ptr++, n--)
105 wk_ptr->lnk_br = wk_ptr + 1; 105 wk_ptr->lnk_br = wk_ptr + 1;
106 wk_ptr->lnk_br = 0; 106 wk_ptr->lnk_br = NULL;
107 } 107 }
108 108
109 109
110 /*******************************************************/ 110 /*******************************************************/
111 /* struct SYO_BNSETSU & ICHBNP & KANGO free エリア作成 */ 111 /* struct SYO_BNSETSU & ICHBNP & KANGO free エリア作成 */
112 /*******************************************************/ 112 /*******************************************************/
113 void 113 void
114 freesbn (sbn) /* struct SYO_BNSETSU を free_area へリンク */ 114 freesbn (sbn) /* struct SYO_BNSETSU を free_area へリンク */
115 register struct SYO_BNSETSU *sbn; /* クリアするノードのポインタ */ 115 register struct SYO_BNSETSU *sbn; /* クリアするノードのポインタ */
116 { 116 {
117 if (sbn == 0) 117 if (sbn == NULL)
118 return; 118 return;
119 sbn->reference--; 119 sbn->reference--;
120 if (sbn->reference <= 0) 120 if (sbn->reference <= 0)
121 { 121 {
122 sbn->lnk_br = free_sbn_top; 122 sbn->lnk_br = free_sbn_top;
126 126
127 void 127 void
128 clr_sbn_node (sbn) 128 clr_sbn_node (sbn)
129 register struct SYO_BNSETSU *sbn; 129 register struct SYO_BNSETSU *sbn;
130 { 130 {
131 if (sbn == 0) 131 if (sbn == NULL)
132 return; 132 return;
133 if ((sbn->reference) <= 1) 133 if ((sbn->reference) <= 1)
134 { 134 {
135 freesbn (sbn); 135 freesbn (sbn);
136 clr_sbn_node (sbn->parent); 136 clr_sbn_node (sbn->parent);
147 struct SYO_BNSETSU * 147 struct SYO_BNSETSU *
148 getsbnsp () 148 getsbnsp ()
149 { 149 {
150 register struct SYO_BNSETSU *rtnptr; 150 register struct SYO_BNSETSU *rtnptr;
151 151
152 if (free_sbn_top == 0) 152 if (free_sbn_top == NULL)
153 { 153 {
154 if (get_area (SBN_KOSUU, sizeof (struct SYO_BNSETSU), &free_list_sbn) < 0) 154 if (get_area (SBN_KOSUU, sizeof (struct SYO_BNSETSU), &free_list_sbn) < 0)
155 return ((struct SYO_BNSETSU *) -1); 155 return ((struct SYO_BNSETSU *) -1);
156 lnk_sbn (free_list_sbn); 156 lnk_sbn (free_list_sbn);
157 } 157 }
158 158
159 rtnptr = free_sbn_top; 159 rtnptr = free_sbn_top;
160 free_sbn_top = free_sbn_top->lnk_br; 160 free_sbn_top = free_sbn_top->lnk_br;
161 rtnptr->lnk_br = 0; 161 rtnptr->lnk_br = NULL;
162 rtnptr->parent = 0; 162 rtnptr->parent = NULL;
163 rtnptr->son_v = 0; 163 rtnptr->son_v = 0;
164 rtnptr->reference = 0; 164 rtnptr->reference = 0;
165 rtnptr->jentptr = 0; 165 rtnptr->jentptr = NULL;
166 rtnptr->status = 0; 166 rtnptr->status = 0;
167 rtnptr->status_bkwd = 0; 167 rtnptr->status_bkwd = 0;
168 return (rtnptr); 168 return (rtnptr);
169 } 169 }