1*4882a593SmuzhiyunFrom eafac77d76d2a23c191a56f715d6c4afc0800da8 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Samuel Martin <s.martin49@gmail.com> 3*4882a593SmuzhiyunDate: Fri, 3 Nov 2017 09:10:01 +0100 4*4882a593SmuzhiyunSubject: [PATCH] add OBEX_CharToUnicode 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun[fetch from debian source: http://http.debian.net/debian/pool/main/u/ussp-push/ussp-push_0.11-4.debian.tar.xz] 7*4882a593Smuzhiyun 8*4882a593SmuzhiyunSigned-off-by: Samuel Martin <s.martin49@gmail.com> 9*4882a593Smuzhiyun--- 10*4882a593Smuzhiyun src/obex_main.c | 20 ++++++++++++++++++++ 11*4882a593Smuzhiyun 1 file changed, 20 insertions(+) 12*4882a593Smuzhiyun 13*4882a593Smuzhiyundiff --git a/src/obex_main.c b/src/obex_main.c 14*4882a593Smuzhiyunindex 6233d7e..971cc37 100644 15*4882a593Smuzhiyun--- a/src/obex_main.c 16*4882a593Smuzhiyun+++ b/src/obex_main.c 17*4882a593Smuzhiyun@@ -84,7 +84,27 @@ void request_done(obex_t * handle, obex_object_t * object, int obex_cmd, int obe 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun int bt_debug; 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun+static int OBEX_CharToUnicode(uint8_t *uc, const uint8_t *c, int size) 22*4882a593Smuzhiyun+{ 23*4882a593Smuzhiyun+ int len, n; 24*4882a593Smuzhiyun+ 25*4882a593Smuzhiyun+ if (uc == NULL || c == NULL) 26*4882a593Smuzhiyun+ return -1; 27*4882a593Smuzhiyun+ 28*4882a593Smuzhiyun+ len = n = strlen((char *) c); 29*4882a593Smuzhiyun+ if (n*2+2 > size) 30*4882a593Smuzhiyun+ return -1; 31*4882a593Smuzhiyun+ 32*4882a593Smuzhiyun+ uc[n*2+1] = 0; 33*4882a593Smuzhiyun+ uc[n*2] = 0; 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun+ while (n--) { 36*4882a593Smuzhiyun+ uc[n*2+1] = c[n]; 37*4882a593Smuzhiyun+ uc[n*2] = 0; 38*4882a593Smuzhiyun+ } 39*4882a593Smuzhiyun+ 40*4882a593Smuzhiyun+ return (len * 2) + 2; 41*4882a593Smuzhiyun+} 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun /* 44*4882a593Smuzhiyun * These two functions are from affix/profiles/obex/obex_io.c 45*4882a593Smuzhiyun-- 46*4882a593Smuzhiyun2.15.0 47*4882a593Smuzhiyun 48