From fd3eb836b9f6d8fc622cb53a5d493ce7315c239e Mon Sep 17 00:00:00 2001 From: Mario Sergio Fujikawa Ferreira Date: Sun, 4 Aug 2002 18:03:54 +0000 Subject: o Update to 0.83.2 o Fix long standing issue with upload feature: client would freeze in semwait state. It was a pthread vs semaphore issue and a database lookup issue. Check PR for complete report o All patches are related to upload feature fix PR: 41323 --- net/dctc/files/patch-src::dc_manage.c | 77 +++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 net/dctc/files/patch-src::dc_manage.c (limited to 'net/dctc/files/patch-src::dc_manage.c') diff --git a/net/dctc/files/patch-src::dc_manage.c b/net/dctc/files/patch-src::dc_manage.c new file mode 100644 index 000000000000..b9475fd2baf4 --- /dev/null +++ b/net/dctc/files/patch-src::dc_manage.c @@ -0,0 +1,77 @@ +--- src/dc_manage.c.orig Mon Jul 22 13:20:19 2002 ++++ src/dc_manage.c Mon Jul 22 18:18:40 2002 +@@ -554,18 +554,6 @@ + + unconvert_path(fullpathname); + +- if(!file_in_db(fullpathname,&virtual)) /* is it a shared file ? */ +- { +- GString *err_msg; +- +- err_msg=g_string_new("$Error "); +- g_string_sprintfa(err_msg,"%s no more exists",fullpathname); +- disp_msg(DEBUG_MSG,"com_up_get_process","file not found",err_msg->str,NULL); +- send_dc_line(sck,err_msg->str,NULL); +- g_string_free(err_msg,TRUE); +- return 1; +- } +- + if(hide_absolute==0) + { + if(((unsigned char)fullpathname[0])==255) +@@ -580,6 +568,18 @@ + fullpathname[0]='/'; + } + ++ if(!file_in_db(fullpathname,&virtual)) /* is it a shared file ? */ ++ { ++ GString *err_msg; ++ ++ err_msg=g_string_new("$Error "); ++ g_string_sprintfa(err_msg,"%s no more exists",fullpathname); ++ disp_msg(DEBUG_MSG,"com_up_get_process","file not found",err_msg->str,NULL); ++ send_dc_line(sck,err_msg->str,NULL); ++ g_string_free(err_msg,TRUE); ++ return 1; ++ } ++ + /* it is time to verify if a slot is available */ + LOCK_WRITE(user_info); + if((dl_on==0)||(virtual!=0)) +@@ -743,18 +743,6 @@ + + unconvert_path(fullpathname); + +- if(!file_in_db(fullpathname,&virtual)) /* is it a shared file ? */ +- { +- GString *err_msg; +- +- err_msg=g_string_new("$Error "); +- g_string_sprintfa(err_msg,"%s no more exists",fullpathname); +- disp_msg(DEBUG_MSG,"com_up_getfilelength_process","file not found",err_msg->str,NULL); +- send_dc_line(sck,err_msg->str,NULL); +- g_string_free(err_msg,TRUE); +- return 1; +- } +- + if(hide_absolute==0) + { + if(((unsigned char)fullpathname[0])==255) +@@ -769,6 +757,17 @@ + fullpathname[0]='/'; + } + ++ if(!file_in_db(fullpathname,&virtual)) /* is it a shared file ? */ ++ { ++ GString *err_msg; ++ ++ err_msg=g_string_new("$Error "); ++ g_string_sprintfa(err_msg,"%s no more exists",fullpathname); ++ disp_msg(DEBUG_MSG,"com_up_getfilelength_process","file not found",err_msg->str,NULL); ++ send_dc_line(sck,err_msg->str,NULL); ++ g_string_free(err_msg,TRUE); ++ return 1; ++ } + + if(send_file_length(sck,fullpathname,&file_len)) + { -- cgit v1.2.3