|
@@ -0,0 +1,108 @@
|
|
|
+From 59c678a754227ca1fb44541cdfe39bbe052be195 Mon Sep 17 00:00:00 2001
|
|
|
+From: Natanael Copa <ncopa@alpinelinux.org>
|
|
|
+Date: Tue, 27 Aug 2013 07:57:12 +0000
|
|
|
+Subject: [PATCH] config: add _cb suffix to callback functions
|
|
|
+
|
|
|
+Commit 4d8dd1494e9f3af2e9738edaca40ada096f7bf10 introduced a build
|
|
|
+regression on uClibc which defines fgetc as macro. To work around that
|
|
|
+we add a _cb suffix to the callback functions.
|
|
|
+
|
|
|
+Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
|
|
|
+---
|
|
|
+ config.c | 32 ++++++++++++++++----------------
|
|
|
+ 1 file changed, 16 insertions(+), 16 deletions(-)
|
|
|
+
|
|
|
+diff --git a/config.c b/config.c
|
|
|
+index e13a7b6..aa80078 100644
|
|
|
+--- a/config.c
|
|
|
|
|
|
+@@ -27,9 +27,9 @@ struct config_source {
|
|
|
+ struct strbuf value;
|
|
|
+ struct strbuf var;
|
|
|
+
|
|
|
+- int (*fgetc)(struct config_source *c);
|
|
|
+- int (*ungetc)(int c, struct config_source *conf);
|
|
|
+- long (*ftell)(struct config_source *c);
|
|
|
++ int (*fgetc_cb)(struct config_source *c);
|
|
|
++ int (*ungetc_cb)(int c, struct config_source *conf);
|
|
|
++ long (*ftell_cb)(struct config_source *c);
|
|
|
+ };
|
|
|
+
|
|
|
+ static struct config_source *cf;
|
|
|
+@@ -217,13 +217,13 @@ int git_config_from_parameters(config_fn_t fn, void *data)
|
|
|
+
|
|
|
+ static int get_next_char(void)
|
|
|
+ {
|
|
|
+- int c = cf->fgetc(cf);
|
|
|
++ int c = cf->fgetc_cb(cf);
|
|
|
+
|
|
|
+ if (c == '\r') {
|
|
|
+ /* DOS like systems */
|
|
|
+- c = cf->fgetc(cf);
|
|
|
++ c = cf->fgetc_cb(cf);
|
|
|
+ if (c != '\n') {
|
|
|
+- cf->ungetc(c, cf);
|
|
|
++ cf->ungetc_cb(c, cf);
|
|
|
+ c = '\r';
|
|
|
+ }
|
|
|
+ }
|
|
|
+@@ -992,9 +992,9 @@ int git_config_from_file(config_fn_t fn, const char *filename, void *data)
|
|
|
+ top.u.file = f;
|
|
|
+ top.name = filename;
|
|
|
+ top.die_on_error = 1;
|
|
|
+- top.fgetc = config_file_fgetc;
|
|
|
+- top.ungetc = config_file_ungetc;
|
|
|
+- top.ftell = config_file_ftell;
|
|
|
++ top.fgetc_cb = config_file_fgetc;
|
|
|
++ top.ungetc_cb = config_file_ungetc;
|
|
|
++ top.ftell_cb = config_file_ftell;
|
|
|
+
|
|
|
+ ret = do_config_from(&top, fn, data);
|
|
|
+
|
|
|
+@@ -1013,9 +1013,9 @@ int git_config_from_buf(config_fn_t fn, const char *name, const char *buf,
|
|
|
+ top.u.buf.pos = 0;
|
|
|
+ top.name = name;
|
|
|
+ top.die_on_error = 0;
|
|
|
+- top.fgetc = config_buf_fgetc;
|
|
|
+- top.ungetc = config_buf_ungetc;
|
|
|
+- top.ftell = config_buf_ftell;
|
|
|
++ top.fgetc_cb = config_buf_fgetc;
|
|
|
++ top.ungetc_cb = config_buf_ungetc;
|
|
|
++ top.ftell_cb = config_buf_ftell;
|
|
|
+
|
|
|
+ return do_config_from(&top, fn, data);
|
|
|
+ }
|
|
|
+@@ -1196,7 +1196,7 @@ static int store_aux(const char *key, const char *value, void *cb)
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
+
|
|
|
+- store.offset[store.seen] = cf->ftell(cf);
|
|
|
++ store.offset[store.seen] = cf->ftell_cb(cf);
|
|
|
+ store.seen++;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+@@ -1223,19 +1223,19 @@ static int store_aux(const char *key, const char *value, void *cb)
|
|
|
+ * Do not increment matches: this is no match, but we
|
|
|
+ * just made sure we are in the desired section.
|
|
|
+ */
|
|
|
+- store.offset[store.seen] = cf->ftell(cf);
|
|
|
++ store.offset[store.seen] = cf->ftell_cb(cf);
|
|
|
+ /* fallthru */
|
|
|
+ case SECTION_END_SEEN:
|
|
|
+ case START:
|
|
|
+ if (matches(key, value)) {
|
|
|
+- store.offset[store.seen] = cf->ftell(cf);
|
|
|
++ store.offset[store.seen] = cf->ftell_cb(cf);
|
|
|
+ store.state = KEY_SEEN;
|
|
|
+ store.seen++;
|
|
|
+ } else {
|
|
|
+ if (strrchr(key, '.') - key == store.baselen &&
|
|
|
+ !strncmp(key, store.key, store.baselen)) {
|
|
|
+ store.state = SECTION_SEEN;
|
|
|
+- store.offset[store.seen] = cf->ftell(cf);
|
|
|
++ store.offset[store.seen] = cf->ftell_cb(cf);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+--
|
|
|
+1.8.3.4
|