Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Startup Init Lite
提交
2469ed59
S
Startup Init Lite
项目概览
OpenHarmony
/
Startup Init Lite
大约 1 年 前同步成功
通知
3
Star
37
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
Startup Init Lite
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
2469ed59
编写于
2月 17, 2022
作者:
Y
yanmengzhao
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
import libhidebug with dlopen func.
Signed-off-by:
N
yanmengzhao
<
yanmengzhao1@huawei.com
>
上级
8dd0fb87
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
14 addition
and
8 deletion
+14
-8
services/BUILD.gn
services/BUILD.gn
+0
-2
services/init/standard/init_service.c
services/init/standard/init_service.c
+13
-2
test/unittest/BUILD.gn
test/unittest/BUILD.gn
+1
-4
未找到文件。
services/BUILD.gn
浏览文件 @
2469ed59
...
...
@@ -151,8 +151,6 @@ if (defined(ohos_lite)) {
"//third_party/cJSON:cjson_static",
]
external_deps = [ "profiler:libhidebug" ]
cflags = []
if (use_musl) {
...
...
services/init/standard/init_service.c
浏览文件 @
2469ed59
...
...
@@ -14,12 +14,12 @@
*/
#include "init_service.h"
#include <dlfcn.h>
#include <stdlib.h>
#include <string.h>
#include <sys/param.h>
#include <sys/resource.h>
#include "hidebug_base.h"
#include "init_group_manager.h"
#include "init.h"
#include "init_log.h"
...
...
@@ -86,7 +86,18 @@ int ServiceExec(const Service *service)
}
}
INIT_CHECK_ONLY_ELOG
(
unsetenv
(
"UV_THREADPOOL_SIZE"
)
==
0
,
"set UV_THREADPOOL_SIZE error : %d."
,
errno
);
InitEnvironmentParam
(
service
->
name
);
void
*
handle
=
dlopen
(
"/system/lib/libhidebug.so"
,
RTLD_LAZY
);
if
(
handle
==
NULL
)
{
INIT_LOGE
(
"Failed to dlopen libhidebug.so, %s
\n
"
,
dlerror
());
return
SERVICE_FAILURE
;
}
bool
(
*
initParam
)();
initParam
=
(
bool
(
*
)())
dlsym
(
handle
,
"InitEnvironmentParam"
);
if
(
initParam
==
NULL
)
{
INIT_LOGE
(
"Failed to dlsym InitEnvironmentParam, %s
\n
"
,
dlerror
());
return
SERVICE_FAILURE
;
}
(
*
initParam
)(
service
->
name
);
// L2 Can not be reset env
if
(
service
->
extraArgs
.
argv
!=
NULL
&&
service
->
extraArgs
.
count
>
0
)
{
INIT_CHECK_ONLY_ELOG
(
execv
(
service
->
extraArgs
.
argv
[
0
],
service
->
extraArgs
.
argv
)
==
0
,
...
...
test/unittest/BUILD.gn
浏览文件 @
2469ed59
...
...
@@ -190,10 +190,7 @@ ohos_unittest("init_ut") {
]
defines += [ "_GNU_SOURCE" ]
external_deps = [
"hiviewdfx_hilog_native:libhilog",
"profiler:libhidebug",
]
external_deps = [ "hiviewdfx_hilog_native:libhilog" ]
if (param_feature_watcher) {
external_deps += [
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录