1*4882a593SmuzhiyunFrom bc14f9d7889ec4c3bd7a84b33ab13862022c6a56 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: liyue <liyue@forlinx.com> 3*4882a593SmuzhiyunDate: Mon, 11 Sep 2023 17:25:23 +0800 4*4882a593SmuzhiyunSubject: [PATCH 1/2] obex fix 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun--- 7*4882a593Smuzhiyun gobex/gobex-header.c | 11 ++++++++++- 8*4882a593Smuzhiyun 1 file changed, 10 insertions(+), 1 deletion(-) 9*4882a593Smuzhiyun 10*4882a593Smuzhiyundiff --git a/gobex/gobex-header.c b/gobex/gobex-header.c 11*4882a593Smuzhiyunindex 011d33d..0001204 100644 12*4882a593Smuzhiyun--- a/gobex/gobex-header.c 13*4882a593Smuzhiyun+++ b/gobex/gobex-header.c 14*4882a593Smuzhiyun@@ -175,7 +175,7 @@ GObexHeader *g_obex_header_decode(const void *data, gsize len, 15*4882a593Smuzhiyun header->id, hdr_len); 16*4882a593Smuzhiyun goto failed; 17*4882a593Smuzhiyun } 18*4882a593Smuzhiyun- 19*4882a593Smuzhiyun+#if 0 20*4882a593Smuzhiyun header->v.string = g_convert((const char *) ptr, hdr_len - 5, 21*4882a593Smuzhiyun "UTF-8", "UTF-16BE", 22*4882a593Smuzhiyun NULL, &str_len, &conv_err); 23*4882a593Smuzhiyun@@ -187,6 +187,15 @@ GObexHeader *g_obex_header_decode(const void *data, gsize len, 24*4882a593Smuzhiyun g_error_free(conv_err); 25*4882a593Smuzhiyun goto failed; 26*4882a593Smuzhiyun } 27*4882a593Smuzhiyun+#else 28*4882a593Smuzhiyun+ char *name = (char *)malloc(hdr_len - 5); 29*4882a593Smuzhiyun+ int i = 0; 30*4882a593Smuzhiyun+ for(i = 0; i < hdr_len - 5; i++) 31*4882a593Smuzhiyun+ name[i] = ptr[i * 2 + 1]; 32*4882a593Smuzhiyun+#endif 33*4882a593Smuzhiyun+ 34*4882a593Smuzhiyun+ header->v.string = name; 35*4882a593Smuzhiyun+ str_len = hdr_len - 5; 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun header->vlen = (gsize) str_len; 38*4882a593Smuzhiyun header->hlen = hdr_len; 39*4882a593Smuzhiyun-- 40*4882a593Smuzhiyun2.25.1 41*4882a593Smuzhiyun 42