* [PATCH] Sparse fixes for http-fetch
@ 2005-10-13 17:42 Peter Hagervall
2005-10-13 17:51 ` H. Peter Anvin
2005-10-13 18:16 ` Junio C Hamano
0 siblings, 2 replies; 3+ messages in thread
From: Peter Hagervall @ 2005-10-13 17:42 UTC (permalink / raw)
To: junkio; +Cc: git
This patch cleans out all sparse warnings from http-fetch.c
I'm a bit uncomfortable with adding extra #ifdefs to avoid either
'mixing declaration with code' or 'unused variable' warnings, but I
figured that since those functions are already littered with #ifdefs I
might just get away with it. Comments?
---
* ANSI:fy a few function definitions
* Make needlessly global functions static
* Move variable declarations to beginning of enclosing block
Signed-off-by: Peter Hagervall <hager@cs.umu.se>
---
diff --git a/http-fetch.c b/http-fetch.c
index 0aba891..f2d0e0a 100644
--- a/http-fetch.c
+++ b/http-fetch.c
@@ -143,7 +143,7 @@ void process_curl_messages();
void process_request_queue();
#endif
-struct active_request_slot *get_active_slot()
+static struct active_request_slot *get_active_slot(void)
{
struct active_request_slot *slot = active_queue_head;
struct active_request_slot *newslot;
@@ -192,7 +192,7 @@ struct active_request_slot *get_active_s
return slot;
}
-int start_active_slot(struct active_request_slot *slot)
+static int start_active_slot(struct active_request_slot *slot)
{
#ifdef USE_CURL_MULTI
CURLMcode curlm_result = curl_multi_add_handle(curlm, slot->curl);
@@ -207,7 +207,7 @@ int start_active_slot(struct active_requ
return 1;
}
-void run_active_slot(struct active_request_slot *slot)
+static void run_active_slot(struct active_request_slot *slot)
{
#ifdef USE_CURL_MULTI
int num_transfers;
@@ -255,7 +255,7 @@ void run_active_slot(struct active_reque
#endif
}
-void start_request(struct transfer_request *request)
+static void start_request(struct transfer_request *request)
{
char *hex = sha1_to_hex(request->sha1);
char prevfile[PATH_MAX];
@@ -381,7 +381,7 @@ void start_request(struct transfer_reque
request->state = ACTIVE;
}
-void finish_request(struct transfer_request *request)
+static void finish_request(struct transfer_request *request)
{
fchmod(request->local, 0444);
close(request->local);
@@ -409,7 +409,7 @@ void finish_request(struct transfer_requ
pull_say("got %s\n", sha1_to_hex(request->sha1));
}
-void release_request(struct transfer_request *request)
+static void release_request(struct transfer_request *request)
{
struct transfer_request *entry = request_queue_head;
@@ -427,7 +427,7 @@ void release_request(struct transfer_req
}
#ifdef USE_CURL_MULTI
-void process_curl_messages()
+void process_curl_messages(void)
{
int num_messages;
struct active_request_slot *slot;
@@ -479,7 +479,7 @@ void process_curl_messages()
}
}
-void process_request_queue()
+void process_request_queue(void)
{
struct transfer_request *request = request_queue_head;
int num_transfers;
@@ -875,6 +875,9 @@ static int fetch_object(struct alt_base
char *hex = sha1_to_hex(sha1);
int ret;
struct transfer_request *request = request_queue_head;
+#ifdef USE_CURL_MULTI
+ int num_transfers;
+#endif
while (request != NULL && memcmp(request->sha1, sha1, 20))
request = request->next;
@@ -887,7 +890,6 @@ static int fetch_object(struct alt_base
}
#ifdef USE_CURL_MULTI
- int num_transfers;
while (request->state == WAITING) {
curl_multi_perform(curlm, &num_transfers);
if (num_transfers < active_requests) {
@@ -1052,6 +1054,9 @@ int main(int argc, char **argv)
char *url;
int arg = 1;
struct active_request_slot *slot;
+#ifdef USE_CURL_MULTI
+ char *http_max_requests;
+#endif
while (arg < argc && argv[arg][0] == '-') {
if (argv[arg][1] == 't') {
@@ -1082,7 +1087,7 @@ int main(int argc, char **argv)
curl_global_init(CURL_GLOBAL_ALL);
#ifdef USE_CURL_MULTI
- char *http_max_requests = getenv("GIT_HTTP_MAX_REQUESTS");
+ http_max_requests = getenv("GIT_HTTP_MAX_REQUESTS");
if (http_max_requests != NULL)
max_requests = atoi(http_max_requests);
if (max_requests < 1)
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] Sparse fixes for http-fetch
2005-10-13 17:42 [PATCH] Sparse fixes for http-fetch Peter Hagervall
@ 2005-10-13 17:51 ` H. Peter Anvin
2005-10-13 18:16 ` Junio C Hamano
1 sibling, 0 replies; 3+ messages in thread
From: H. Peter Anvin @ 2005-10-13 17:51 UTC (permalink / raw)
To: Peter Hagervall; +Cc: junkio, git
Peter Hagervall wrote:
> This patch cleans out all sparse warnings from http-fetch.c
>
> I'm a bit uncomfortable with adding extra #ifdefs to avoid either
> 'mixing declaration with code' or 'unused variable' warnings, but I
> figured that since those functions are already littered with #ifdefs I
> might just get away with it. Comments?
>
For the first, you can use extra brackets to create blocks in which
declarations can happen; for the latter, you can (void)var; to specify
that a certain variable may be legitimately unused under some circumstances.
-hpa
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] Sparse fixes for http-fetch
2005-10-13 17:42 [PATCH] Sparse fixes for http-fetch Peter Hagervall
2005-10-13 17:51 ` H. Peter Anvin
@ 2005-10-13 18:16 ` Junio C Hamano
1 sibling, 0 replies; 3+ messages in thread
From: Junio C Hamano @ 2005-10-13 18:16 UTC (permalink / raw)
To: Peter Hagervall; +Cc: git
Peter Hagervall <hager@cs.umu.se> writes:
> I'm a bit uncomfortable with adding extra #ifdefs to avoid either
> 'mixing declaration with code' or 'unused variable' warnings, but I
> figured that since those functions are already littered with #ifdefs I
> might just get away with it. Comments?
How about something like this on top of what you posted? There
still is one in main(), but...
---
cd /opt/packrat/playpen/public/in-place/git/git.junio/
git diff
diff --git a/http-fetch.c b/http-fetch.c
index 26f8130..d549471 100644
--- a/http-fetch.c
+++ b/http-fetch.c
@@ -27,6 +27,8 @@ static int data_received;
#ifdef USE_CURL_MULTI
static int max_requests = DEFAULT_MAX_REQUESTS;
static CURLM *curlm;
+static void process_curl_messages();
+static void process_request_queue();
#endif
static CURL *curl_default;
static struct curl_slist *pragma_header;
@@ -154,11 +156,6 @@ static size_t fwrite_sha1_file(void *ptr
return size;
}
-#ifdef USE_CURL_MULTI
-void process_curl_messages();
-void process_request_queue();
-#endif
-
static struct active_request_slot *get_active_slot(void)
{
struct active_request_slot *slot = active_queue_head;
@@ -443,7 +440,7 @@ static void release_request(struct trans
}
#ifdef USE_CURL_MULTI
-void process_curl_messages(void)
+static void process_curl_messages(void)
{
int num_messages;
struct active_request_slot *slot;
@@ -495,7 +492,7 @@ void process_curl_messages(void)
}
}
-void process_request_queue(void)
+static void process_request_queue(void)
{
struct transfer_request *request = request_queue_head;
int num_transfers;
@@ -904,9 +901,6 @@ static int fetch_object(struct alt_base
char *hex = sha1_to_hex(sha1);
int ret;
struct transfer_request *request = request_queue_head;
-#ifdef USE_CURL_MULTI
- int num_transfers;
-#endif
while (request != NULL && memcmp(request->sha1, sha1, 20))
request = request->next;
@@ -920,6 +914,7 @@ static int fetch_object(struct alt_base
#ifdef USE_CURL_MULTI
while (request->state == WAITING) {
+ int num_transfers;
curl_multi_perform(curlm, &num_transfers);
if (num_transfers < active_requests) {
process_curl_messages();
Compilation finished at Thu Oct 13 11:14:23
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2005-10-13 18:16 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-10-13 17:42 [PATCH] Sparse fixes for http-fetch Peter Hagervall
2005-10-13 17:51 ` H. Peter Anvin
2005-10-13 18:16 ` Junio C Hamano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).