stat()'s behaviour is undefined if the first argument is NULL and might
be prone to segfault. Add an additional check to skip the stat()
invocation if no destfile is used.

Signed-off-by: Lukas Fleischer <[email protected]>
---
 lib/libalpm/dload.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/lib/libalpm/dload.c b/lib/libalpm/dload.c
index 5a63e48..731d807 100644
--- a/lib/libalpm/dload.c
+++ b/lib/libalpm/dload.c
@@ -260,7 +260,7 @@ static int curl_download_internal(struct dload_payload 
*payload,
                curl_easy_setopt(handle->curl, CURLOPT_USERAGENT, useragent);
        }
 
-       if(!payload->allow_resume && !payload->force && stat(destfile, &st) == 
0) {
+       if(!payload->allow_resume && !payload->force && destfile && 
stat(destfile, &st) == 0) {
                /* start from scratch, but only download if our local is out of 
date. */
                curl_easy_setopt(handle->curl, CURLOPT_TIMECONDITION, 
CURL_TIMECOND_IFMODSINCE);
                curl_easy_setopt(handle->curl, CURLOPT_TIMEVALUE, 
(long)st.st_mtime);
-- 
1.7.6


Reply via email to