ASF Bugzilla – Attachment 18247 Details for
Bug 39518
Change some "apr_palloc / memcpy" to apr_pmemdup
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch for the proposed clean-up
apr_pmemdup.diff (text/plain), 9.19 KB, created by
Christophe JAILLET
on 2006-05-08 20:41:57 UTC
(
hide
)
Description:
Patch for the proposed clean-up
Filename:
MIME Type:
Creator:
Christophe JAILLET
Created:
2006-05-08 20:41:57 UTC
Size:
9.19 KB
patch
obsolete
>Index: modules/aaa/mod_authn_core.c >=================================================================== >--- modules/aaa/mod_authn_core.c (revision 404763) >+++ modules/aaa/mod_authn_core.c (working copy) >@@ -88,8 +88,7 @@ > /* Create this conf by duplicating the base, replacing elements > * (or creating copies for merging) where new-> values exist. > */ >- conf = (authn_core_dir_conf *)apr_palloc(a, sizeof(authn_core_dir_conf)); >- memcpy(conf, base, sizeof(authn_core_dir_conf)); >+ conf = (authn_core_dir_conf *)apr_pmemdup(a, base, sizeof(authn_core_dir_conf)); > > if (new->ap_auth_type) { > conf->ap_auth_type = new->ap_auth_type; >Index: modules/ssl/ssl_scache_dbm.c >=================================================================== >--- modules/ssl/ssl_scache_dbm.c (revision 404763) >+++ modules/ssl/ssl_scache_dbm.c (working copy) >@@ -370,8 +370,7 @@ > bDelete = TRUE; > } > if (bDelete) { >- if ((keylist[keyidx].dptr = apr_palloc(p, dbmkey.dsize)) != NULL) { >- memcpy(keylist[keyidx].dptr, dbmkey.dptr, dbmkey.dsize); >+ if ((keylist[keyidx].dptr = apr_pmemdup(p, dbmkey.dptr, dbmkey.dsize)) != NULL) { > keylist[keyidx].dsize = dbmkey.dsize; > keyidx++; > if (keyidx == KEYMAX) >Index: modules/filters/mod_include.c >=================================================================== >--- modules/filters/mod_include.c (revision 404763) >+++ modules/filters/mod_include.c (working copy) >@@ -3225,9 +3225,8 @@ > > /* check if we mismatched earlier and have to release some chars */ > if (release && (ctx->flags & SSI_FLAG_PRINTING)) { >- char *to_release = apr_palloc(ctx->pool, release); >+ char *to_release = apr_pmemdup(ctx->pool, intern->start_seq, release); > >- memcpy(to_release, intern->start_seq, release); > newb = apr_bucket_pool_create(to_release, release, ctx->pool, > f->c->bucket_alloc); > APR_BRIGADE_INSERT_TAIL(pass_bb, newb); >@@ -3414,9 +3413,9 @@ > if (intern->seen_eos) { > if (PARSE_HEAD == intern->state) { > if (ctx->flags & SSI_FLAG_PRINTING) { >- char *to_release = apr_palloc(ctx->pool, intern->parse_pos); >+ char *to_release = apr_pmemdup(ctx->pool, intern->start_seq, >+ intern->parse_pos); > >- memcpy(to_release, intern->start_seq, intern->parse_pos); > APR_BRIGADE_INSERT_TAIL(pass_bb, > apr_bucket_pool_create(to_release, > intern->parse_pos, ctx->pool, >Index: server/core.c >=================================================================== >--- server/core.c (revision 404763) >+++ server/core.c (working copy) >@@ -222,8 +222,7 @@ > /* Create this conf by duplicating the base, replacing elements > * (or creating copies for merging) where new-> values exist. > */ >- conf = (core_dir_config *)apr_palloc(a, sizeof(core_dir_config)); >- memcpy(conf, base, sizeof(core_dir_config)); >+ conf = (core_dir_config *)apr_pmemdup(a, base, sizeof(core_dir_config)); > > conf->d = new->d; > conf->d_is_fnmatch = new->d_is_fnmatch; >@@ -269,10 +268,9 @@ > else if (new->response_code_strings != NULL) { > /* If we merge, the merge-result must have it's own array > */ >- conf->response_code_strings = apr_palloc(a, >+ conf->response_code_strings = apr_pmemdup(a, >+ base->response_code_strings, > sizeof(*conf->response_code_strings) * RESPONSE_CODES); >- memcpy(conf->response_code_strings, base->response_code_strings, >- sizeof(*conf->response_code_strings) * RESPONSE_CODES); > > for (i = 0; i < RESPONSE_CODES; ++i) { > if (new->response_code_strings[i] != NULL) { >@@ -470,8 +468,7 @@ > core_server_config *virt = (core_server_config *)virtv; > core_server_config *conf; > >- conf = (core_server_config *)apr_palloc(p, sizeof(core_server_config)); >- memcpy(conf, virt, sizeof(core_server_config)); >+ conf = (core_server_config *)apr_pmemdup(p, virt, sizeof(core_server_config)); > > if (!conf->access_name) { > conf->access_name = base->access_name; >Index: modules/http/mod_mime.c >=================================================================== >--- modules/http/mod_mime.c (revision 404763) >+++ modules/http/mod_mime.c (working copy) >@@ -140,11 +140,10 @@ > const void *base_val, > const void *data) > { >- extension_info *new_info = apr_palloc(p, sizeof(extension_info)); > const extension_info *overlay_info = (const extension_info *)overlay_val; > const extension_info *base_info = (const extension_info *)base_val; >+ extension_info *new_info = apr_pmemdup(p, base_info, sizeof(extension_info)); > >- memcpy(new_info, base_info, sizeof(extension_info)); > if (overlay_info->forced_type) { > new_info->forced_type = overlay_info->forced_type; > } >Index: modules/aaa/mod_authz_core.c >=================================================================== >--- modules/aaa/mod_authz_core.c (revision 404763) >+++ modules/aaa/mod_authz_core.c (working copy) >@@ -130,8 +130,7 @@ > /* Create this conf by duplicating the base, replacing elements > * (or creating copies for merging) where new-> values exist. > */ >- conf = (authz_core_dir_conf *)apr_palloc(a, sizeof(authz_core_dir_conf)); >- memcpy(conf, new, sizeof(authz_core_dir_conf)); >+ conf = (authz_core_dir_conf *)apr_pmemdup(a, new, sizeof(authz_core_dir_conf)); > > conf->some_authz = base->some_authz == -1 ? 0:base->some_authz == 0 ? 0:new->some_authz; > >Index: modules/dav/fs/lock.c >=================================================================== >--- modules/dav/fs/lock.c (revision 404763) >+++ modules/dav/fs/lock.c (working copy) >@@ -600,8 +600,7 @@ > dp = apr_pcalloc(p, sizeof(*dp)); > memcpy(dp, val.dptr + offset, sizeof(dp->f)); > offset += sizeof(dp->f); >- dp->locktoken = apr_palloc(p, sizeof(*dp->locktoken)); >- memcpy(dp->locktoken, val.dptr + offset, sizeof(*dp->locktoken)); >+ dp->locktoken = apr_pmemdup(p, val.dptr + offset, sizeof(*dp->locktoken)); > offset += sizeof(*dp->locktoken); > if (*(val.dptr + offset) == '\0') { > ++offset; >@@ -648,15 +647,13 @@ > /* Create and fill a dav_lock_indirect structure */ > > ip = apr_pcalloc(p, sizeof(*ip)); >- ip->locktoken = apr_palloc(p, sizeof(*ip->locktoken)); >- memcpy(ip->locktoken, val.dptr + offset, sizeof(*ip->locktoken)); >+ ip->locktoken = apr_pmemdup(p, val.dptr + offset, sizeof(*ip->locktoken)); > offset += sizeof(*ip->locktoken); > memcpy(&ip->timeout, val.dptr + offset, sizeof(ip->timeout)); > offset += sizeof(ip->timeout); > memcpy(&ip->key.dsize, val.dptr + offset, sizeof(ip->key.dsize)); /* length of datum */ > offset += sizeof(ip->key.dsize); >- ip->key.dptr = apr_palloc(p, ip->key.dsize); >- memcpy(ip->key.dptr, val.dptr + offset, ip->key.dsize); >+ ip->key.dptr = apr_pmemdup(p, val.dptr + offset, ip->key.dsize); > offset += ip->key.dsize; > > if (!dav_fs_lock_expired(ip->timeout)) { >Index: modules/dav/lock/locks.c >=================================================================== >--- modules/dav/lock/locks.c (revision 404763) >+++ modules/dav/lock/locks.c (working copy) >@@ -603,8 +603,7 @@ > offset += sizeof(dp->f); > > /* Copy the lock token. */ >- dp->locktoken = apr_palloc(p, sizeof(*dp->locktoken)); >- memcpy(dp->locktoken, val.dptr + offset, sizeof(*dp->locktoken)); >+ dp->locktoken = apr_pmemdup(p, val.dptr + offset, sizeof(*dp->locktoken)); > offset += sizeof(*dp->locktoken); > > /* Do we have an owner field? */ >@@ -639,16 +638,14 @@ > /* Create and fill a dav_lock_indirect structure */ > > ip = apr_pcalloc(p, sizeof(*ip)); >- ip->locktoken = apr_palloc(p, sizeof(*ip->locktoken)); >- memcpy(ip->locktoken, val.dptr + offset, sizeof(*ip->locktoken)); >+ ip->locktoken = apr_pmemdup(p, val.dptr + offset, sizeof(*ip->locktoken)); > offset += sizeof(*ip->locktoken); > memcpy(&ip->timeout, val.dptr + offset, sizeof(ip->timeout)); > offset += sizeof(ip->timeout); > /* length of datum */ > ip->key.dsize = *((int *) (val.dptr + offset)); > offset += sizeof(ip->key.dsize); >- ip->key.dptr = apr_palloc(p, ip->key.dsize); >- memcpy(ip->key.dptr, val.dptr + offset, ip->key.dsize); >+ ip->key.dptr = apr_pmemdup(p, val.dptr + offset, ip->key.dsize); > offset += ip->key.dsize; > > if (!dav_generic_lock_expired(ip->timeout)) {
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 39518
: 18247 |
24180