mirror of
https://github.com/asterisk/asterisk.git
synced 2026-07-23 16:05:30 -07:00
Temporary revert of 111662. It's causing lots of trouble and appears to not be
the proper solution to the problem reported anyway. (related to issue #12884) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@111777 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
+4
-4
@@ -8308,15 +8308,15 @@ static void copy_request(struct sip_request *dst, const struct sip_request *src)
|
||||
if (!dst->data && !(dst->data = ast_str_create(src->data->used)))
|
||||
return;
|
||||
else if (dst->data->len < src->data->used)
|
||||
ast_str_make_space(&dst->data, src->data->used + 1); /* Account for null terminator needed */
|
||||
ast_str_make_space(&dst->data, src->data->used);
|
||||
|
||||
ast_copy_string(dst->data->str, src->data->str, dst->data->len);
|
||||
memcpy(dst->data->str, src->data->str, src->data->used);
|
||||
dst->data->used = src->data->used;
|
||||
offset = ((void *)dst->data->str) - ((void *)src->data->str);
|
||||
/* Now fix pointer arithmetic */
|
||||
for (x = 0; x < src->headers; x++)
|
||||
for (x=0; x < src->headers; x++)
|
||||
dst->header[x] += offset;
|
||||
for (x = 0; x < src->lines; x++)
|
||||
for (x=0; x < src->lines; x++)
|
||||
dst->line[x] += offset;
|
||||
/* On some occasions this function is called without parse_request being called first so lets not create an invalid pointer */
|
||||
if (src->rlPart1)
|
||||
|
||||
@@ -326,7 +326,7 @@ int ast_get_timeval(const char *src, struct timeval *tv, struct timeval _default
|
||||
*/
|
||||
struct ast_str {
|
||||
size_t len; /*!< The current maximum length of the string */
|
||||
size_t used; /*!< Amount of space used. Does not include string's null terminator */
|
||||
size_t used; /*!< Amount of space used */
|
||||
struct ast_threadstorage *ts; /*!< What kind of storage is this ? */
|
||||
#define DS_MALLOC ((struct ast_threadstorage *)1)
|
||||
#define DS_ALLOCA ((struct ast_threadstorage *)2)
|
||||
|
||||
Reference in New Issue
Block a user