Fix web/index issue with NULL mime types

This commit is contained in:
simon 2020-02-09 17:23:49 -05:00
parent 184439aa38
commit 7eb9c5d7d5
6 changed files with 16 additions and 5 deletions

View File

@ -320,7 +320,7 @@ video/x-dv, dif|dv
video/x-fli, fli video/x-fli, fli
video/x-isvideo, isu video/x-isvideo, isu
video/x-motion-jpeg, mjpg video/x-motion-jpeg, mjpg
video/x-ms-asf, asf|asx video/x-ms-asf, asf|asx|wmv
video/x-qtc, qtc video/x-qtc, qtc
video/x-sgi-movie, movie|mv video/x-sgi-movie, movie|mv
application/x-7z-compressed, 7z application/x-7z-compressed, 7z

1 application/arj arj
320 video/x-fli fli
321 video/x-isvideo isu
322 video/x-motion-jpeg mjpg
323 video/x-ms-asf asf|asx asf|asx|wmv
324 video/x-qtc qtc
325 video/x-sgi-movie movie|mv
326 application/x-7z-compressed 7z

View File

@ -214,7 +214,12 @@ void read_index_bin(const char *path, const char *index_id, index_func func) {
char uuid_str[UUID_STR_LEN]; char uuid_str[UUID_STR_LEN];
uuid_unparse(line.uuid, uuid_str); uuid_unparse(line.uuid, uuid_str);
cJSON_AddStringToObject(document, "mime", mime_get_mime_text(line.mime)); const char* mime_text = mime_get_mime_text(line.mime);
if (mime_text == NULL) {
cJSON_AddNullToObject(document, "mime");
} else {
cJSON_AddStringToObject(document, "mime", mime_get_mime_text(line.mime));
}
cJSON_AddNumberToObject(document, "size", (double) line.size); cJSON_AddNumberToObject(document, "size", (double) line.size);
cJSON_AddNumberToObject(document, "mtime", line.mtime); cJSON_AddNumberToObject(document, "mtime", line.mtime);

View File

@ -6,7 +6,7 @@
#define EPILOG "Made by simon987 <me@simon987.net>. Released under GPL-3.0" #define EPILOG "Made by simon987 <me@simon987.net>. Released under GPL-3.0"
static const char *const Version = "1.2.9"; static const char *const Version = "1.2.10";
static const char *const usage[] = { static const char *const usage[] = {
"sist2 scan [OPTION]... PATH", "sist2 scan [OPTION]... PATH",
"sist2 index [OPTION]... INDEX", "sist2 index [OPTION]... INDEX",

View File

@ -1293,6 +1293,7 @@ g_hash_table_insert(ext_table, "isu", (gpointer)video_x_isvideo);
g_hash_table_insert(ext_table, "mjpg", (gpointer)video_x_motion_jpeg); g_hash_table_insert(ext_table, "mjpg", (gpointer)video_x_motion_jpeg);
g_hash_table_insert(ext_table, "asf", (gpointer)video_x_ms_asf); g_hash_table_insert(ext_table, "asf", (gpointer)video_x_ms_asf);
g_hash_table_insert(ext_table, "asx", (gpointer)video_x_ms_asf); g_hash_table_insert(ext_table, "asx", (gpointer)video_x_ms_asf);
g_hash_table_insert(ext_table, "wmv", (gpointer)video_x_ms_asf);
g_hash_table_insert(ext_table, "qtc", (gpointer)video_x_qtc); g_hash_table_insert(ext_table, "qtc", (gpointer)video_x_qtc);
g_hash_table_insert(ext_table, "movie", (gpointer)video_x_sgi_movie); g_hash_table_insert(ext_table, "movie", (gpointer)video_x_sgi_movie);
g_hash_table_insert(ext_table, "mv", (gpointer)video_x_sgi_movie); g_hash_table_insert(ext_table, "mv", (gpointer)video_x_sgi_movie);

View File

@ -181,7 +181,12 @@ int chunked_response_file(const char *filename, const char *mime,
} }
} }
onion_response_set_length(res, length); onion_response_set_length(res, length);
onion_response_set_header(res, "Content-Type", mime); if (mime != NULL) {
onion_response_set_header(res, "Content-Type", mime);
} else {
onion_response_set_header(res, "Content-Type", "application/octet-stream");
}
onion_response_write_headers(res); onion_response_write_headers(res);
if ((onion_request_get_flags(request) & OR_HEAD) == OR_HEAD) { if ((onion_request_get_flags(request) & OR_HEAD) == OR_HEAD) {
length = 0; length = 0;

View File

@ -11,7 +11,7 @@
<nav class="navbar navbar-expand-lg"> <nav class="navbar navbar-expand-lg">
<a class="navbar-brand" href="/">sist2</a> <a class="navbar-brand" href="/">sist2</a>
<span class="badge badge-pill version">v1.2.9</span> <span class="badge badge-pill version">v1.2.10</span>
<span class="tagline">Lightning-fast file system indexer and search tool </span> <span class="tagline">Lightning-fast file system indexer and search tool </span>
<a style="margin-left: auto" id="theme" class="btn" title="Toggle theme" href="/">Theme</a> <a style="margin-left: auto" id="theme" class="btn" title="Toggle theme" href="/">Theme</a>
</nav> </nav>