Han-Wen Nienhuys (2):
Fix typo in submodule.h
Document the string_list structure
string-list.h | 6 ++++++
submodule.h | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
--
2.14.1.821.g8fa685d3b7-goog
Signed-off-by: Han-Wen Nienhuys <redacted>
---
submodule.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/submodule.h b/submodule.h
index 6b52133c8..f0da0277a 100644
--- a/submodule.h
+++ b/submodule.h
@@ -120,7 +120,7 @@ extern int submodule_move_head(const char *path,
/*
* Prepare the "env_array" parameter of a "struct child_process" for executing
- * a submodule by clearing any repo-specific envirionment variables, but
+ * a submodule by clearing any repo-specific environment variables, but
* retaining any config in the environment.
*/
extern void prepare_submodule_repo_env(struct argv_array *out);
--
2.14.1.821.g8fa685d3b7-goog
Signed-off-by: Han-Wen Nienhuys <redacted>
---
string-list.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/string-list.h b/string-list.h
index 29bfb7ae4..08b534166 100644
--- a/string-list.h
+++ b/string-list.h
@@ -8,6 +8,12 @@ struct string_list_item {
typedef int (*compare_strings_fn)(const char *, const char *);
+/* A resizable array of strings. The strings are owned if
+ * 'strdup_strings' is set. It can be used as a sorted array, and a
+ * custom comparison may be given in 'cmp'. The field 'items[i].util'
+ * may be used to implement an array of pairs. In that case, the
+ * caller is responsible for managing memory pointed to by 'util'.
+ */
struct string_list {
struct string_list_item *items;
unsigned int nr, alloc;--
2.14.1.821.g8fa685d3b7-goog
On Thu, Sep 21, 2017 at 02:43:38PM +0200, Han-Wen Nienhuys wrote:
quoted hunk
Signed-off-by: Han-Wen Nienhuys <redacted>
---
string-list.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/string-list.h b/string-list.h
index 29bfb7ae4..08b534166 100644
--- a/string-list.h
+++ b/string-list.h
@@ -8,6 +8,12 @@ struct string_list_item {
typedef int (*compare_strings_fn)(const char *, const char *);
+/* A resizable array of strings. The strings are owned if
+ * 'strdup_strings' is set. It can be used as a sorted array, and a
+ * custom comparison may be given in 'cmp'. The field 'items[i].util'
+ * may be used to implement an array of pairs. In that case, the
+ * caller is responsible for managing memory pointed to by 'util'.
+ */
struct string_list {
struct string_list_item *items;
unsigned int nr, alloc;
There's a considerable amount of documentation for string-list in
Documentation/technical/api-string-list.txt.
Perhaps we should look at migrating it into string-list.h, where it's
more likely to be found (and kept up to date). We did something similar
for strbuf.h a while back, and I think the result is much better. See
the commits in:
git log bdfdaa4978^..d468fa2721
for an example.
-Peff
On 09/21, Han-Wen Nienhuys wrote:
quoted hunk
Signed-off-by: Han-Wen Nienhuys <redacted>
---
string-list.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/string-list.h b/string-list.h
index 29bfb7ae4..08b534166 100644
--- a/string-list.h
+++ b/string-list.h
@@ -8,6 +8,12 @@ struct string_list_item {
typedef int (*compare_strings_fn)(const char *, const char *);
+/* A resizable array of strings. The strings are owned if
nit: the start of the comment block should be on its own line:
/*
* A resizable ...
+ * 'strdup_strings' is set. It can be used as a sorted array, and a
+ * custom comparison may be given in 'cmp'. The field 'items[i].util'
+ * may be used to implement an array of pairs. In that case, the
+ * caller is responsible for managing memory pointed to by 'util'.
+ */
The util field can be freed if 'free_util' is set when calling
string_list_clear() but yeah, in general the caller is managing that
memory especially if a complex free function is required (in the case of
allocating a struct with dynamically allocated fields to be stored in
the util feild).
Just pointing that out, and I'm happy with this and the previous patch.
struct string_list {
struct string_list_item *items;
unsigned int nr, alloc;
--
2.14.1.821.g8fa685d3b7-goog
--
Brandon Williams