diff --git a/frameworks/liteipc/src/serializer.c b/frameworks/liteipc/src/serializer.c index 6bf26df2c2b104aee58cbedb1ee94a174449ead7..53465ba1057f17c53c349223df55eeac485233ab 100755 --- a/frameworks/liteipc/src/serializer.c +++ b/frameworks/liteipc/src/serializer.c @@ -24,7 +24,7 @@ #include "sys_binder.h" #endif -#define MAX_IO_SIZE 8192UL +#define MAX_IO_SIZE 64512UL #define MAX_OBJ_NUM 32UL #define MAX_DATA_BUFF_SIZE 65536UL diff --git a/frameworks/liteipc_linux/src/liteipc_adapter.c b/frameworks/liteipc_linux/src/liteipc_adapter.c index 3141362381e375d9007fefa8ddf2fb15556e8cea..474527d0ad5f51c68c1b9943e1c0b7f0e6b59ed9 100644 --- a/frameworks/liteipc_linux/src/liteipc_adapter.c +++ b/frameworks/liteipc_linux/src/liteipc_adapter.c @@ -398,13 +398,22 @@ static bool IsValidCB(IpcMsg* ipcMsg) static void HandleSpawnLooper(const IpcContext *context, const struct FuncPair *funcPair) { pthread_t thread; + LOG(ERROR, "enter handlespawnlooper funcpair is %p", funcPair); struct BinderThreadDesc *btd = (struct BinderThreadDesc *)malloc(sizeof(struct BinderThreadDesc)); + LOG(ERROR, "malloc finished! btd is %p", btd); if (btd == NULL) { return; } btd->context = context; - btd->func = funcPair->func; - btd->argv = funcPair->argv; + if (funcPair != NULL) { + btd->func = funcPair->func; + btd->argv = funcPair->argv; + } else { + LOG(ERROR, "funcPair is NULL!"); + btd->func = NULL; + btd->argv = NULL; + } + int ret = pthread_create(&thread, NULL, BinderThreadRoutine, btd); if (ret != 0) { free(btd); diff --git a/interfaces/kits/liteipc_adapter.h b/interfaces/kits/liteipc_adapter.h index 937d88c722c1993f8d62f61e5a6d12fff89151db..bf0911525fb37361cff4e1706cee82de918b999d 100755 --- a/interfaces/kits/liteipc_adapter.h +++ b/interfaces/kits/liteipc_adapter.h @@ -35,7 +35,7 @@ extern "C" { #define IPC_WAIT_FOREVER 0XFFFFFFFF #define IPC_TIMEOUT_MIN 10 /* unit:ms */ #define IPC_INVAILD_TIMER_ID (timer_t)-1 -#define IPC_IO_DATA_MAX 8192UL +#define IPC_IO_DATA_MAX 64512UL typedef enum { LITEIPC_FLAG_DEFAULT = 0, // send and reply