Fossil SCM
Allow blob_remove_cr() to be used for both \r\n -> \n as well as \r -> \n conversions.
Commit
4b2c2a519f02525a1e4a10f3e764dc4a16412b81
Parent
fab2b8aea5b7c90…
1 file changed
+3
-1
+3
-1
| --- src/blob.c | ||
| +++ src/blob.c | ||
| @@ -1014,19 +1014,21 @@ | ||
| 1014 | 1014 | } |
| 1015 | 1015 | } |
| 1016 | 1016 | #endif |
| 1017 | 1017 | |
| 1018 | 1018 | /* |
| 1019 | -** Remove every \r character from the given blob. | |
| 1019 | +** Remove every \r character from the given blob. If not followed | |
| 1020 | +** by \n, insert \n. | |
| 1020 | 1021 | */ |
| 1021 | 1022 | void blob_remove_cr(Blob *p){ |
| 1022 | 1023 | int i, j; |
| 1023 | 1024 | char *z; |
| 1024 | 1025 | blob_materialize(p); |
| 1025 | 1026 | z = p->aData; |
| 1026 | 1027 | for(i=j=0; z[i]; i++){ |
| 1027 | 1028 | if( z[i]!='\r' ) z[j++] = z[i]; |
| 1029 | + else if( z[i+1]!='\n') z[j++] = '\n'; | |
| 1028 | 1030 | } |
| 1029 | 1031 | z[j] = 0; |
| 1030 | 1032 | p->nUsed = j; |
| 1031 | 1033 | } |
| 1032 | 1034 | |
| 1033 | 1035 |
| --- src/blob.c | |
| +++ src/blob.c | |
| @@ -1014,19 +1014,21 @@ | |
| 1014 | } |
| 1015 | } |
| 1016 | #endif |
| 1017 | |
| 1018 | /* |
| 1019 | ** Remove every \r character from the given blob. |
| 1020 | */ |
| 1021 | void blob_remove_cr(Blob *p){ |
| 1022 | int i, j; |
| 1023 | char *z; |
| 1024 | blob_materialize(p); |
| 1025 | z = p->aData; |
| 1026 | for(i=j=0; z[i]; i++){ |
| 1027 | if( z[i]!='\r' ) z[j++] = z[i]; |
| 1028 | } |
| 1029 | z[j] = 0; |
| 1030 | p->nUsed = j; |
| 1031 | } |
| 1032 | |
| 1033 |
| --- src/blob.c | |
| +++ src/blob.c | |
| @@ -1014,19 +1014,21 @@ | |
| 1014 | } |
| 1015 | } |
| 1016 | #endif |
| 1017 | |
| 1018 | /* |
| 1019 | ** Remove every \r character from the given blob. If not followed |
| 1020 | ** by \n, insert \n. |
| 1021 | */ |
| 1022 | void blob_remove_cr(Blob *p){ |
| 1023 | int i, j; |
| 1024 | char *z; |
| 1025 | blob_materialize(p); |
| 1026 | z = p->aData; |
| 1027 | for(i=j=0; z[i]; i++){ |
| 1028 | if( z[i]!='\r' ) z[j++] = z[i]; |
| 1029 | else if( z[i+1]!='\n') z[j++] = '\n'; |
| 1030 | } |
| 1031 | z[j] = 0; |
| 1032 | p->nUsed = j; |
| 1033 | } |
| 1034 | |
| 1035 |