pike.git
/
src
/
modules
/
Perl
/
perlmod.c
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/modules/Perl/perlmod.c:164:
if(env_mapping) { INT32 d; int env_block_size=0; char *env_blockp; struct keypair *k; MAPPING_LOOP(env_mapping) env_block_size+=k->ind.u.string->len+k->val.u.string->len+2; THIS->env_block=xalloc(env_block_size);
-
THIS->env=(char **)xalloc(m_sizeof(env_mapping)+1);
+
THIS->env=(char **)xalloc(
sizeof(char *)*(
m_sizeof(env_mapping)+1)
)
;
env_blockp=THIS->env_block; d=0; MAPPING_LOOP(env_mapping) { THIS->env[d++]=env_blockp; MEMCPY(env_blockp,k->ind.u.string->str,k->ind.u.string->len); env_blockp+=k->ind.u.string->len; *(env_blockp++)='=';
pike.git/src/modules/Perl/perlmod.c:198:
char *env_blockp; #ifdef DECLARE_ENVIRON extern char **environ; #endif for(d=0;environ[d];d++) env_block_size+=strlen(environ[d])+1; THIS->env_block=xalloc(env_block_size);
-
THIS->env=(char **)xalloc(d+1);
+
THIS->env=(char **)xalloc(
sizeof(char *)*(
d+1)
)
;
env_blockp=THIS->env_block; for(d=0;environ[d];d++) { int l=strlen(environ[d]); THIS->env[d]=env_blockp; MEMCPY(env_blockp,environ[d],l+1); env_blockp+=l+1; }
-
+
+
#ifdef PIKE_DEBUG
+
if(env_blockp - THIS->env_block > env_block_size)
+
fatal("Arglebargle glop-glyf.\n");
+
#endif
+
THIS->env[d]=0; } THREADS_ALLOW(); mt_lock(&perl_running); if(!storage->parsed) { perl_construct(p); storage->parsed++; }