From: Seungbae Shin Date: Wed, 27 Oct 2021 10:48:01 +0000 (+0900) Subject: device-manager: use container dedicated device-map json X-Git-Tag: submit/tizen/20211029.025659^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7ee613ac6b48f52d15f98a688a144ae7a379afb4;p=platform%2Fcore%2Fmultimedia%2Fpulseaudio-modules-tizen.git device-manager: use container dedicated device-map json [Version] 13.0.80 [Issue Type] Container Change-Id: If81c7aed340369e451980142d7c677ff22053f98 --- diff --git a/packaging/pulseaudio-modules-tizen.spec b/packaging/pulseaudio-modules-tizen.spec index dc69171..8520637 100644 --- a/packaging/pulseaudio-modules-tizen.spec +++ b/packaging/pulseaudio-modules-tizen.spec @@ -1,6 +1,6 @@ Name: pulseaudio-modules-tizen Summary: Pulseaudio modules for Tizen -Version: 13.0.79 +Version: 13.0.80 Release: 0 Group: Multimedia/Audio License: LGPL-2.1+ diff --git a/src/device-manager.c b/src/device-manager.c index a57fc46..7cb46c9 100644 --- a/src/device-manager.c +++ b/src/device-manager.c @@ -56,6 +56,7 @@ #define SHARED_DEVICE_MANAGER "tizen-device-manager" #define DEVICE_MAP_FILE PA_DEFAULT_CONFIG_DIR"/device-map.json" +#define DEVICE_MAP_FILE_CONTAINER PA_DEFAULT_CONFIG_DIR"/device-map-container.json" #define DEVICE_STR_MAX 40 #define DEVICE_DIRECTION_MAX 3 #define DEVICE_MODULE_STRING_MAX 256 @@ -2439,17 +2440,22 @@ fail: return NULL; } +static const char * get_device_map_json() +{ + return (access("/run/systemd/container", F_OK) == 0) ? DEVICE_MAP_FILE_CONTAINER : DEVICE_MAP_FILE; +} + static struct device_file_map *parse_device_file_map() { struct device_file_map *file_map = NULL; json_object *o, *device_files_o; json_object *playback_devices_o = NULL, *capture_devices_o = NULL; + const char *device_map_file = get_device_map_json(); pa_log_info("\nParse device files"); - o = json_object_from_file(DEVICE_MAP_FILE); - + o = json_object_from_file(device_map_file); if (o == NULL) { - pa_log_error("Read device-map file failed"); + pa_log_error("Read %s file failed", device_map_file); return NULL; } @@ -2522,12 +2528,12 @@ static pa_idxset* parse_device_type_infos() { int device_type_num = 0; int device_type_idx = 0; device_type_info *type_info = NULL; - //pa_hashmap *type_infos = NULL; pa_idxset *type_infos = NULL; + const char *device_map_file = get_device_map_json(); - o = json_object_from_file(DEVICE_MAP_FILE); + o = json_object_from_file(device_map_file); if (o == NULL) { - pa_log_error("Read device-map file failed"); + pa_log_error("Read %s file failed", device_map_file); return NULL; }