Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/lexborisov/Modest.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/myhtml/serialization.c')
-rwxr-xr-x[-rw-r--r--]source/myhtml/serialization.c24
1 files changed, 18 insertions, 6 deletions
diff --git a/source/myhtml/serialization.c b/source/myhtml/serialization.c
index ef76b94..9685cd0 100644..100755
--- a/source/myhtml/serialization.c
+++ b/source/myhtml/serialization.c
@@ -269,9 +269,15 @@ void myhtml_serialization_append(const char *data, size_t size, myhtml_callback_
notwritten = 0;
break;
case 0xA0:
- if (notwritten) callback(data + i - notwritten, notwritten, ptr);
- callback(" ", 6, ptr);
- notwritten = 0;
+ if(i > 0 && (unsigned char)(data[(i - 1)]) == 0xC2) {
+ if (notwritten) callback(data + i - notwritten, (notwritten - 1), ptr);
+ callback(" ", 6, ptr);
+ notwritten = 0;
+ }
+ else {
+ ++notwritten;
+ }
+
break;
default:
++notwritten;
@@ -308,9 +314,15 @@ void myhtml_serialization_append_attr(const char* data, size_t size, myhtml_call
notwritten = 0;
break;
case 0xA0:
- if (notwritten) callback(data + i - notwritten, notwritten, ptr);
- callback(" ", 6, ptr);
- notwritten = 0;
+ if(i > 0 && (unsigned char)(data[(i - 1)]) == 0xC2) {
+ if (notwritten) callback(data + i - notwritten, (notwritten - 1), ptr);
+ callback(" ", 6, ptr);
+ notwritten = 0;
+ }
+ else {
+ ++notwritten;
+ }
+
break;
default:
++notwritten;