Changeset 3734 for zzuf/trunk


Ignore:
Timestamp:
Oct 27, 2009, 11:44:09 PM (11 years ago)
Author:
Sam Hocevar
Message:

Add a getline() variant to zzcat.

Location:
zzuf/trunk/test
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • zzuf/trunk/test/check-utils

    r2573 r3734  
    2121            check "$ZZOPTS" "< $file" "zzuf"
    2222        fi
    23         for n in 0 20 21 22 30 31 40 41 42; do
     23        for n in 0 20 21 22 23 30 31 40 41 42; do
    2424            check "$ZZOPTS" "$ZZCAT $n $file" "zzcat $n"
    2525        done
  • zzuf/trunk/test/zzcat.c

    r2563 r3734  
    5555    FILE *stream;
    5656    int i, j, fd;
     57    char c;
    5758
    5859    if(argc != 3)
     
    112113        fclose(stream);
    113114        break;
     115#if defined HAVE_GETLINE
     116    case 23: /* getline() calls */
     117        stream = fopen(name, "r");
     118        if(!stream)
     119            return EXIT_FAILURE;
     120        i = 0;
     121        while ((c = getc(stream)) != EOF)
     122        {
     123            char *line;
     124            ssize_t ret;
     125            size_t n;
     126
     127            ungetc(c, stream);
     128            line = NULL;
     129            ret = getline(&line, &n, stream);
     130            for (j = 0; j < ret; i++, j++)
     131                data[i] = line[j];
     132        }
     133        fclose(stream);
     134        break;
     135#endif
    114136    case 30: /* one fread(), then only getc() calls */
    115137        stream = fopen(name, "r");
Note: See TracChangeset for help on using the changeset viewer.