Merge lp:~brianaker/drizzle/ip-memory-leak into lp:~drizzle-trunk/drizzle/development

Proposed by Brian Aker
Status: Merged
Approved by: Brian Aker
Approved revision: not available
Merged at revision: 2423
Proposed branch: lp:~brianaker/drizzle/ip-memory-leak
Merge into: lp:~drizzle-trunk/drizzle/development
Diff against target: 85 lines (+16/-14)
1 file modified
drizzled/type/ipv6.h (+16/-14)
To merge this branch: bzr merge lp:~brianaker/drizzle/ip-memory-leak
Reviewer Review Type Date Requested Status
Drizzle Merge Team Pending
Review via email: mp+76436@code.launchpad.net
To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'drizzled/type/ipv6.h'
2--- drizzled/type/ipv6.h 2011-08-21 23:08:13 +0000
3+++ drizzled/type/ipv6.h 2011-09-21 15:52:27 +0000
4@@ -185,7 +185,9 @@
5 int ipv6_inet_pton(const char *src)
6 {
7 if (strlen(src)> IPV6_DISPLAY_LENGTH)
8- return 0; //Invalid IPaddress
9+ {
10+ return 0; //Invalid IPaddress
11+ }
12
13 //Local variables
14 char ipv6[IPV6_BUFFER_LENGTH];
15@@ -298,14 +300,14 @@
16 return 0;
17 }
18
19- int num_miss_octet =0, size =0;
20+ int num_miss_octet =0;
21
22 num_miss_octet = 8 - octet_count;
23+#if 0
24 size = 2*num_miss_octet +1;
25-
26- char * zero_append = new char[size];
27-
28- memset(zero_append, 0, sizeof(zero_append));
29+#endif
30+
31+ std::string zero_append;
32
33 ptr_src = ipv6_temp;
34
35@@ -343,22 +345,24 @@
36 if(colon>0)
37 {
38 //zero padding format according to the '::' position
39- strcpy(zero_append,"");
40+ zero_append+= "";
41
42 for (int i= 0; i < num_miss_octet; i++)
43 {
44 if(colon==1) // start
45 {
46- strcat(zero_append,"0:");
47+ zero_append+= "0:";
48 }
49+
50 if(colon==2 || colon==3) //middle or end colon =2 shows at end
51 {
52- strcat(zero_append,":0");
53+ zero_append+= ":0";
54 }
55 }
56+
57 if(colon==3)
58 {
59- strcat(zero_append,":");
60+ zero_append+= ":";
61 }
62
63 ptr_src = temp_end;
64@@ -390,11 +394,11 @@
65
66 if(colon==2) // end
67 {
68- strcat(temp_first,zero_append);
69+ strcat(temp_first, zero_append.c_str());
70 }
71 else
72 {
73- strcat(temp_first,zero_append);
74+ strcat(temp_first, zero_append.c_str());
75
76 strcat(temp_first,temp_end);
77 }
78@@ -461,8 +465,6 @@
79 ptr_src = strtok (NULL, ":");
80 }// end of main while loop
81
82- delete [] zero_append;
83-
84 return 1;
85 }// end of Ipv6_Inet_pton function
86