string escaping
This commit is contained in:
14
threading.c
14
threading.c
@@ -87,8 +87,7 @@ void *thread_mid(){
|
||||
mid_content->file_size = 0;
|
||||
mid_content->permissions = 0;
|
||||
mid_content->color_pair = 0;
|
||||
mid_content->file_name = malloc(sizeof(char));
|
||||
mid_content->file_name[0] = '\0';
|
||||
mid_content->file_name = "";
|
||||
|
||||
mid_file_count = 0;
|
||||
|
||||
@@ -149,14 +148,17 @@ void *thread_lft(){
|
||||
void *thread_rgt(){
|
||||
|
||||
file file_current;
|
||||
file_current.file_name = NULL;
|
||||
while(!(status & STATUS_QUIT_PROGRAM)){
|
||||
pthread_mutex_lock(&mutex_rgt);
|
||||
pthread_cond_wait(&cond_rgt, &mutex_rgt);
|
||||
|
||||
|
||||
pthread_mutex_lock(&mutex_mid);
|
||||
char *path = mid_content[selected_file_current].file_name;
|
||||
free(file_current.file_name);
|
||||
memcpy(&file_current, &mid_content[selected_file_current], sizeof(file));
|
||||
file_current.file_name = malloc(strlen(mid_content[selected_file_current].file_name));
|
||||
memcpy(file_current.file_name, mid_content[selected_file_current].file_name, strlen(mid_content[selected_file_current].file_name)+1);
|
||||
pthread_mutex_unlock(&mutex_mid);
|
||||
|
||||
if (file_current.permissions & S_IRUSR) {
|
||||
@@ -173,11 +175,11 @@ void *thread_rgt(){
|
||||
}
|
||||
free(rgt_content);
|
||||
|
||||
rgt_file_count = get_dir_size(path);
|
||||
rgt_file_count = get_dir_size(file_current.file_name);
|
||||
if (rgt_file_count) { /* fails if dir empty */
|
||||
rgt_content = malloc(rgt_file_count * sizeof(file));
|
||||
memset(rgt_content, '\0', rgt_file_count * sizeof(file));
|
||||
get_dir_content(path, &rgt_file_count, rgt_content);
|
||||
get_dir_content(file_current.file_name, &rgt_file_count, rgt_content);
|
||||
rgt_content[0].status &= ~FILE_STATUS_FILE_OPEN;
|
||||
|
||||
free(rgt_buffer);
|
||||
@@ -203,7 +205,7 @@ void *thread_rgt(){
|
||||
free(rgt_buffer);
|
||||
rgt_content->file_type = FILE_TYPE_OPEN_FILE;
|
||||
rgt_content->status = FILE_STATUS_HOVER;
|
||||
rgt_buffer = preview_file(path, file_current.file_size);
|
||||
rgt_buffer = preview_file(&file_current);
|
||||
}
|
||||
} else {
|
||||
unsigned long i = 0;
|
||||
|
||||
Reference in New Issue
Block a user