[Libguestfs] [PATCH] Modify the function: analyze_line, make it more flexible

Pino Toscano ptoscano at redhat.com
Tue Jun 23 11:59:59 UTC 2015


In data martedì 23 giugno 2015 18:38:19, Cao jin ha scritto:
> Modify the function from a fixed delimiter to a variable. So,
> it can be used in more APIs later. Also modified the existing
> callers
> 
> Signed-off-by: Cao jin <caoj.fnst at cn.fujitsu.com>
> ---
>  daemon/btrfs.c | 14 +++++++-------
>  1 file changed, 7 insertions(+), 7 deletions(-)
> 
> diff --git a/daemon/btrfs.c b/daemon/btrfs.c
> index 8b5779a..afbd6e6 100644
> --- a/daemon/btrfs.c
> +++ b/daemon/btrfs.c
> @@ -853,11 +853,10 @@ do_btrfs_fsck (const char *device, int64_t superblock, int repair)
>   * returns the next position following \n.
>   */
>  static char *
> -analyze_line (char *line, char **key, char **value)
> +analyze_line (char *line, char **key, char **value, char delimiter)
>  {
>    char *p = line;
>    char *next = NULL;
> -  char delimiter = ':';
>    char *del_pos = NULL;
>  
>    if (!line || *line == '\0') {
> @@ -964,7 +963,7 @@ do_btrfs_subvolume_show (const char *subvolume)
>     *                                 snapshots/test3
>     *
>     */
> -  p = analyze_line(out, &key, &value);
> +  p = analyze_line(out, &key, &value, ':');
>    if (!p) {
>      reply_with_error ("truncated output: %s", out);
>      return NULL;
> @@ -984,7 +983,7 @@ do_btrfs_subvolume_show (const char *subvolume)
>    }
>  
>    /* Read the lines and split into "key: value". */
> -  p = analyze_line(p, &key, &value);
> +  p = analyze_line(p, &key, &value, ':');
>    while (key) {
>      /* snapshot is special, see the output above */
>      if (STREQLEN (key, "Snapshot(s)", sizeof ("Snapshot(s)") - 1)) {
> @@ -994,7 +993,7 @@ do_btrfs_subvolume_show (const char *subvolume)
>        if (add_string (&ret, key) == -1)
>          return NULL;
>  
> -      p = analyze_line(p, &key, &value);
> +      p = analyze_line(p, &key, &value, ':');
>  
>        while (key && !value) {
>            ss = realloc (ss, ss_len + strlen (key) + 1);
> @@ -1008,7 +1007,7 @@ do_btrfs_subvolume_show (const char *subvolume)
>            ss_len += strlen (key);
>            ss[ss_len] = '\0';
>  
> -          p = analyze_line(p, &key, &value);
> +          p = analyze_line(p, &key, &value, ':');
>        }
>  
>        if (ss) {
> @@ -1031,7 +1030,7 @@ do_btrfs_subvolume_show (const char *subvolume)
>            return NULL;
>        }
>  
> -      p = analyze_line(p, &key, &value);
> +      p = analyze_line(p, &key, &value, ':');
>      }
>    }
>  
> @@ -2061,3 +2060,4 @@ do_btrfs_image (char *const *sources, const char *image,
>  
>    return 0;
>  }

LGTM, pushed.

(BTW: please don't hand-edit patches, `patch` might not like them)

Thanks,
-- 
Pino Toscano




More information about the Libguestfs mailing list