From: Shixin Zeng Date: Thu, 28 May 2009 09:52:23 +0000 (+0300) Subject: Fix string length bugs in GWinHttpFile (#580347) X-Git-Url: http://git.openbox.org/?a=commitdiff_plain;h=dbe7408a5c06b4e88cf2605a24b0949adc02446c;p=dana%2Fcg-glib.git Fix string length bugs in GWinHttpFile (#580347) --- diff --git a/gio/win32/gwinhttpfile.c b/gio/win32/gwinhttpfile.c index a4709ed4..7e72b9f4 100644 --- a/gio/win32/gwinhttpfile.c +++ b/gio/win32/gwinhttpfile.c @@ -387,12 +387,12 @@ g_winhttp_file_resolve_relative_path (GFile *file, child = g_object_new (G_TYPE_WINHTTP_FILE, NULL); child->vfs = winhttp_file->vfs; child->url = winhttp_file->url; - child->url.lpszScheme = g_memdup (winhttp_file->url.lpszScheme, winhttp_file->url.dwSchemeLength*2); - child->url.lpszHostName = g_memdup (winhttp_file->url.lpszHostName, winhttp_file->url.dwHostNameLength*2); - child->url.lpszUserName = g_memdup (winhttp_file->url.lpszUserName, winhttp_file->url.dwUserNameLength*2); - child->url.lpszPassword = g_memdup (winhttp_file->url.lpszPassword, winhttp_file->url.dwPasswordLength*2); + child->url.lpszScheme = g_memdup (winhttp_file->url.lpszScheme, (winhttp_file->url.dwSchemeLength+1)*2); + child->url.lpszHostName = g_memdup (winhttp_file->url.lpszHostName, (winhttp_file->url.dwHostNameLength+1)*2); + child->url.lpszUserName = g_memdup (winhttp_file->url.lpszUserName, (winhttp_file->url.dwUserNameLength+1)*2); + child->url.lpszPassword = g_memdup (winhttp_file->url.lpszPassword, (winhttp_file->url.dwPasswordLength+1)*2); child->url.lpszUrlPath = wnew_path; - child->url.dwUrlPathLength = 2*(wcslen (wnew_path)+1); + child->url.dwUrlPathLength = wcslen (wnew_path); child->url.lpszExtraInfo = NULL; child->url.dwExtraInfoLength = 0;