| 256 | */ |
| 257 | |
| 258 | char **CSLMerge(char **papszOrig, CSLConstList papszOverride) |
| 259 | |
| 260 | { |
| 261 | if (papszOrig == nullptr && papszOverride != nullptr) |
| 262 | return CSLDuplicate(papszOverride); |
| 263 | |
| 264 | if (papszOverride == nullptr) |
| 265 | return papszOrig; |
| 266 | |
| 267 | for (int i = 0; papszOverride[i] != nullptr; ++i) |
| 268 | { |
| 269 | char *pszKey = nullptr; |
| 270 | const char *pszValue = CPLParseNameValue(papszOverride[i], &pszKey); |
| 271 | |
| 272 | papszOrig = CSLSetNameValue(papszOrig, pszKey, pszValue); |
| 273 | CPLFree(pszKey); |
| 274 | } |
| 275 | |
| 276 | return papszOrig; |
| 277 | } |
| 278 | |
| 279 | /************************************************************************/ |
| 280 | /* CSLLoad2() */ |
no test coverage detected