mirror of
https://gittea.dev/nova/th.git
synced 2025-10-21 10:20:15 -04:00
maximum size of file_previews
This commit is contained in:
@@ -46,16 +46,14 @@ char* preview_file(char *file_name, unsigned long file_size){
|
||||
|
||||
if (strstr(mime, "text")) {
|
||||
file_buffer = text(file_name, &file_size);
|
||||
} else {
|
||||
} else if (strstr(mime, "image")) {
|
||||
file_buffer = generic(file_name);
|
||||
}
|
||||
|
||||
if (strstr(mime, "image")) {
|
||||
images_print(file_name);
|
||||
previewd = 1;
|
||||
} else {
|
||||
images_clear();
|
||||
} else {
|
||||
file_buffer = generic(file_name);
|
||||
}
|
||||
images_clear();
|
||||
|
||||
free(mime);
|
||||
return file_buffer;
|
||||
@@ -63,10 +61,14 @@ char* preview_file(char *file_name, unsigned long file_size){
|
||||
}
|
||||
char* text(char *path, unsigned long *file_size){
|
||||
|
||||
char *file_buffer = malloc(*file_size + 1);
|
||||
unsigned long size = (terminal_width/2) * terminal_height;
|
||||
if (size > *file_size) {
|
||||
size = *file_size;
|
||||
}
|
||||
char *file_buffer = malloc(size + 1);
|
||||
FILE *fp = fopen(path, "r");
|
||||
if (fread(file_buffer, *file_size, 1, fp) != 0) {
|
||||
file_buffer[*file_size] = '\0';
|
||||
if (fread(file_buffer, size, 1, fp) != 0) {
|
||||
file_buffer[size] = '\0';
|
||||
return file_buffer;
|
||||
} else {
|
||||
return "failed reading file";
|
||||
|
6
window.c
6
window.c
@@ -80,7 +80,7 @@ void window_mid(WINDOW *win){
|
||||
|
||||
if (pthread_mutex_trylock(&mutex_mid) == 0) {
|
||||
if (mid_file_count == 0) {
|
||||
mvwprintw(win, 0, 0, "empty");
|
||||
mvwaddstr(win, 0, 0, "empty");
|
||||
} else {
|
||||
print_dir(win, 1, &mid_file_count, mid_content);
|
||||
}
|
||||
@@ -96,9 +96,9 @@ void window_rgt(WINDOW *win){
|
||||
if (pthread_mutex_trylock(&mutex_rgt) == 0) {
|
||||
if (rgt_file_count == 0) {
|
||||
if (rgt_content[0].file_type == FILE_TYPE_OPEN_FILE) {
|
||||
mvwprintw(win, 0, 0, "%s", rgt_buffer);
|
||||
mvwaddnstr(win, 0, 0, rgt_buffer, (terminal_width/2) * terminal_width);
|
||||
} else {
|
||||
mvwprintw(win, 0, 0, "empty");
|
||||
mvwaddstr(win, 0, 0, "empty");
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user