Changeset 6afadbe25bc66e43d70cdd098ee35562fb37a7ae
- Timestamp:
- 09/12/07 16:27:08
(1 year ago)
- Author:
- Rémi Denis-Courmont <rem@videolan.org>
- git-committer:
- Rémi Denis-Courmont <rem@videolan.org> 1189607228 +0000
- git-parent:
[3a7e1af15db939d5a6edbc2c8a31f4614a662d2a]
- git-author:
- Rémi Denis-Courmont <rem@videolan.org> 1189607228 +0000
- Message:
Remove extra va_end; code factorization
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
| r7d4a9c9 |
r6afadbe |
|
| 162 | 162 | { |
|---|
| 163 | 163 | size_t oldlen = strlen (*sdp); |
|---|
| 164 | | va_list aq; |
|---|
| 165 | | va_copy ( aq, ap ); |
|---|
| 166 | | size_t addlen = |
|---|
| 167 | | sizeof ("a=:\r\n") + strlen (name) + vsnprintf (NULL, 0, fmt, ap); |
|---|
| | 164 | size_t addlen = sizeof ("a=\r\n") + strlen (name); |
|---|
| | 165 | |
|---|
| | 166 | if (fmt != NULL) |
|---|
| | 167 | { |
|---|
| | 168 | va_list aq; |
|---|
| | 169 | |
|---|
| | 170 | va_copy (aq, ap); |
|---|
| | 171 | addlen += 1 + vsnprintf (NULL, 0, fmt, aq); |
|---|
| | 172 | va_end (aq); |
|---|
| | 173 | } |
|---|
| | 174 | |
|---|
| 168 | 175 | char *ret = realloc (*sdp, oldlen + addlen); |
|---|
| 169 | | |
|---|
| 170 | 176 | if (ret == NULL) |
|---|
| 171 | 177 | return NULL; |
|---|
| 172 | 178 | |
|---|
| 173 | | oldlen += sprintf (ret + oldlen, "a=%s:", name); |
|---|
| 174 | | oldlen += vsprintf (ret + oldlen, fmt, aq); |
|---|
| 175 | | va_end (aq); |
|---|
| | 179 | oldlen += sprintf (ret + oldlen, "a=%s", name); |
|---|
| | 180 | if (fmt != NULL) |
|---|
| | 181 | { |
|---|
| | 182 | ret[oldlen++] = ':'; |
|---|
| | 183 | oldlen += vsprintf (ret + oldlen, fmt, ap); |
|---|
| | 184 | } |
|---|
| | 185 | |
|---|
| 176 | 186 | strcpy (ret + oldlen, "\r\n"); |
|---|
| 177 | 187 | return *sdp = ret; |
|---|
| … | … | |
| 182 | 192 | { |
|---|
| 183 | 193 | char *ret; |
|---|
| 184 | | |
|---|
| 185 | | if (fmt != NULL) |
|---|
| 186 | | { |
|---|
| 187 | | va_list ap; |
|---|
| 188 | | |
|---|
| 189 | | va_start (ap, fmt); |
|---|
| 190 | | ret = vsdp_AddAttribute (sdp, name, fmt, ap); |
|---|
| 191 | | va_end (ap); |
|---|
| 192 | | } |
|---|
| 193 | | else |
|---|
| 194 | | { |
|---|
| 195 | | size_t oldlen = strlen (*sdp); |
|---|
| 196 | | ret = realloc (*sdp, oldlen + strlen (name) + sizeof ("a=\r\n")); |
|---|
| 197 | | if (ret == NULL) |
|---|
| 198 | | return NULL; |
|---|
| 199 | | |
|---|
| 200 | | sprintf (ret + oldlen, "a=%s\r\n", name); |
|---|
| 201 | | } |
|---|
| | 194 | va_list ap; |
|---|
| | 195 | |
|---|
| | 196 | va_start (ap, fmt); |
|---|
| | 197 | ret = vsdp_AddAttribute (sdp, name, fmt, ap); |
|---|
| | 198 | va_end (ap); |
|---|
| | 199 | |
|---|
| 202 | 200 | return ret; |
|---|
| 203 | 201 | } |
|---|