Friday, May 09, 2008

First Patch - d4x 2.5.7.1

--- d4x-2.5.7.1/main/addr.cc 2006-04-06 01:19:36.000000000 +0700
+++ d4x-2.5.7.1-ahn/main/addr.cc 2008-05-07 09:48:41.953994637 +0700
@@ -181,7 +181,10 @@ namespace d4x{
file=path.substr(p+1);
path=path.substr(0,p);
};
- path=d4x::Path("/")/path;
+ std::string sp = path.substr(0,1);
+ if(sp.compare("/") != 0) {
+ path=d4x::Path("/")/path;
+ };

if (!port)
port=get_port_by_proto(proto);


itu patch pertama yg gw bikin, buat benerin bug di d4x, soalnya tiap kali download file path nya bisa nambah character '/' misal download http://server/dir/file.zip jadinya nanti //dir/file.zip
dan kalo download direstart '/' nya nambah satu jadi ///dir/file.zip
dibeberapa server ga bisa jalan tuh salah satunya rapidshare

awalnya gw cuma iseng compile versi terbaru, eh ternyata error pas compile di slack 12.1 krn versi gtk yg baru banyak yg deprecated. trus iseng utak atik source nya ternyata bisa ignore deprecated
ya udah sementara diignore aja dulu. eh udah cape2 compile dan berhasil.. gak taunya ga bisa donlod dari rapidshare... trus cek log nya... liat kirikanan ternyata pas get request path nya kelebihan tanda /, pikir2 dah tanggung td oprek source code ya udah sekalian aja cari deh 'kutu'nya ada dimana. debugnya pake cara gampang aja, tampilin log sebanyak2nya huehehe
akhirnya ktmu juga dimana tuh 'kutu'

yah ini pengalaman pertama nyari kutu di app open source, moga2 aja kedepannya gw bisa lebih banyak oprek2 app open source buat nambah pengalaman nyari kutu. :p