Lines Matching refs:strings
43 { if ((psf->strings.flags & SF_STR_ALLOW_START) == 0)
45 if (psf->have_written && (psf->strings.flags & SF_STR_ALLOW_END) == 0)
47 /* Only allow zero length strings for software. */
55 if (psf->strings.data [k].type == str_type)
56 psf->strings.data [k].type = -1 ;
58 if (psf->strings.data [k].type == 0)
65 { if ((psf->strings.flags & SF_STR_ALLOW_END) == 0)
74 if (k == 0 && psf->strings.storage_used != 0)
75 { psf_log_printf (psf, "SFE_STR_WEIRD : k == 0 && psf->strings.storage_used != 0\n") ;
79 if (k != 0 && psf->strings.storage_used == 0)
80 { psf_log_printf (psf, "SFE_STR_WEIRD : k != 0 && psf->strings.storage_used == 0\n") ;
86 psf->strings.storage_used = 0 ;
128 if (psf->strings.storage_used + str_len + 1 > psf->strings.storage_len)
129 { char * temp = psf->strings.storage ;
130 size_t newlen = 2 * psf->strings.storage_len + str_len + 1 ;
134 if ((psf->strings.storage = realloc (temp, newlen)) == NULL)
135 { psf->strings.storage = temp ;
139 psf->strings.storage_len = newlen ;
142 psf->strings.data [k].type = str_type ;
143 psf->strings.data [k].offset = psf->strings.storage_used ;
144 psf->strings.data [k].flags = str_flags ;
146 memcpy (psf->strings.storage + psf->strings.storage_used, str, str_len) ;
147 psf->strings.storage_used += str_len ;
149 psf->strings.flags |= str_flags ;
152 printf ("storage_used : %zd / %zd\n", psf->strings.storage_used, psf->strings.storage_len) ;
153 psf_hexdump (psf->strings.storage, psf->strings.storage_used) ;
172 if (str_type == psf->strings.data [k].type)
173 return psf->strings.storage + psf->strings.data [k].offset ;
183 if (psf->strings.data [k].type > 0 && psf->strings.data [k].flags & location)