Skip to content

Commit 75941a8

Browse files
committed
Use /media/data/ for subarchive storage on RK2818 devices
1 parent b5aed3e commit 75941a8

File tree

2 files changed

+16
-1
lines changed

2 files changed

+16
-1
lines changed

S-trace-changelog.txt

+1
Original file line numberDiff line numberDiff line change
@@ -244,3 +244,4 @@ https://github.com/S-trace/eView/raw/master/eView_screenshoots.rar]eView_screens
244244

245245
064t3 от 26.jan.2015
246246
* Исправлена проблема с некорректно работающим автоопределением типа обновления экрана (не обновлялся на Digma R60G/Gmini MagicBook T6LHD и аналогичных)
247+
* На книгах с процессором RK2818 (Digma R60G/Gmini MagicBook T6LHD и аналогичных) используется теперь для входа во вложенные архивы раздел /media/data/ вместо корневого раздела с прошивкой

src/archive_handler.c

+15-1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,20 @@ typedef struct {
2525
const char *sign; /* Signature to compare to */
2626
} magic_sign;
2727

28+
char *detect_subarchive_prefix(void)
29+
{
30+
if (access("/media/data/", R_OK))
31+
{
32+
TRACE("Unable to access /media/data/ - using / as subarchive extracting prefix\n");
33+
return (strdup("/"));
34+
}
35+
else
36+
{
37+
TRACE("Using /media/data/ as subarchive extracting prefix\n");
38+
return (strdup("/media/data/"));
39+
}
40+
}
41+
2842
char *escape(const char *input) /* Экранирование нежелательных символов для грепа (прежде всего квадратных скобок) */
2943
{
3044
char *escaped;
@@ -264,7 +278,7 @@ void enter_subarchive(const char *name, struct_panel *panel) /* Вход во в
264278
#ifdef __amd64
265279
const char *prefix="/tmp/";
266280
#else
267-
const char *prefix="/";
281+
const char *prefix=detect_subarchive_prefix();
268282
#endif
269283
archive_extract_file(panel->archive_stack[panel->archive_depth], name, prefix);
270284
asprintf(&subarchive, "%s%s/%s", prefix, panel->archive_cwd, name);

0 commit comments

Comments
 (0)