Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
vcs-svn: remove buffer_read_string
author
Jonathan Nieder
<jrnieder@gmail.com>
Fri, 25 Mar 2011 04:09:19 +0000
(23:09 -0500)
committer
Jonathan Nieder
<jrnieder@gmail.com>
Sat, 26 Mar 2011 05:17:35 +0000
(
00:17
-0500)
All previous users of buffer_read_string have already been converted
to use the more intuitive buffer_read_binary, so remove the old API to
avoid some confusion.
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
t/t0081-line-buffer.sh
patch
|
blob
|
history
test-line-buffer.c
patch
|
blob
|
history
vcs-svn/line_buffer.c
patch
|
blob
|
history
vcs-svn/line_buffer.h
patch
|
blob
|
history
vcs-svn/line_buffer.txt
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
e7d04ee
)
diff --git
a/t/t0081-line-buffer.sh
b/t/t0081-line-buffer.sh
index 550fad0823a8d27cf1d49b1c55154ea7ce69de02..1dbe1c9b08c1d5140bf237bfee2a02cf4831d261 100755
(executable)
--- a/
t/t0081-line-buffer.sh
+++ b/
t/t0081-line-buffer.sh
@@
-53,7
+53,7
@@
long_read_test () {
} >input &
} &&
test-line-buffer input <<-EOF >output &&
} >input &
} &&
test-line-buffer input <<-EOF >output &&
-
read
$readsize
+
binary
$readsize
copy $copysize
EOF
kill $! &&
copy $copysize
EOF
kill $! &&
@@
-71,23
+71,23
@@
test_expect_success 'setup: have pipes?' '
'
test_expect_success 'hello world' '
'
test_expect_success 'hello world' '
- echo
HELLO
>expect &&
+ echo
">HELLO"
>expect &&
test-line-buffer <<-\EOF >actual &&
test-line-buffer <<-\EOF >actual &&
-
read
6
+
binary
6
HELLO
EOF
test_cmp expect actual
'
test_expect_success PIPE '0-length read, no input available' '
HELLO
EOF
test_cmp expect actual
'
test_expect_success PIPE '0-length read, no input available' '
- >expect &&
+
printf ">"
>expect &&
rm -f input &&
mkfifo input &&
{
sleep 100 >input &
} &&
test-line-buffer input <<-\EOF >actual &&
rm -f input &&
mkfifo input &&
{
sleep 100 >input &
} &&
test-line-buffer input <<-\EOF >actual &&
-
read
0
+
binary
0
copy 0
EOF
kill $! &&
copy 0
EOF
kill $! &&
@@
-95,9
+95,9
@@
test_expect_success PIPE '0-length read, no input available' '
'
test_expect_success '0-length read, send along greeting' '
'
test_expect_success '0-length read, send along greeting' '
- echo
HELLO
>expect &&
+ echo
">HELLO"
>expect &&
test-line-buffer <<-\EOF >actual &&
test-line-buffer <<-\EOF >actual &&
-
read
0
+
binary
0
copy 6
HELLO
EOF
copy 6
HELLO
EOF
@@
-105,7
+105,7
@@
test_expect_success '0-length read, send along greeting' '
'
test_expect_success PIPE '1-byte read, no input available' '
'
test_expect_success PIPE '1-byte read, no input available' '
- printf "%s" ab >expect &&
+ printf "
>
%s" ab >expect &&
rm -f input &&
mkfifo input &&
{
rm -f input &&
mkfifo input &&
{
@@
-116,7
+116,7
@@
test_expect_success PIPE '1-byte read, no input available' '
} >input &
} &&
test-line-buffer input <<-\EOF >actual &&
} >input &
} &&
test-line-buffer input <<-\EOF >actual &&
-
read
1
+
binary
1
copy 1
EOF
kill $! &&
copy 1
EOF
kill $! &&
@@
-140,15
+140,6
@@
test_expect_success 'read from file descriptor' '
test_cmp expect actual
'
test_cmp expect actual
'
-test_expect_success 'buffer_read_string copes with null byte' '
- >expect &&
- q_to_nul <<-\EOF | test-line-buffer >actual &&
- read 2
- Q
- EOF
- test_cmp expect actual
-'
-
test_expect_success 'skip, copy null byte' '
echo Q | q_to_nul >expect &&
q_to_nul <<-\EOF | test-line-buffer >actual &&
test_expect_success 'skip, copy null byte' '
echo Q | q_to_nul >expect &&
q_to_nul <<-\EOF | test-line-buffer >actual &&
@@
-170,18
+161,18
@@
test_expect_success 'read null byte' '
'
test_expect_success 'long reads are truncated' '
'
test_expect_success 'long reads are truncated' '
- echo
foo
>expect &&
+ echo
">foo"
>expect &&
test-line-buffer <<-\EOF >actual &&
test-line-buffer <<-\EOF >actual &&
-
read
5
+
binary
5
foo
EOF
test_cmp expect actual
'
test_expect_success 'long copies are truncated' '
foo
EOF
test_cmp expect actual
'
test_expect_success 'long copies are truncated' '
- printf "%s\n" "" foo >expect &&
+ printf "%s\n" "
>
" foo >expect &&
test-line-buffer <<-\EOF >actual &&
test-line-buffer <<-\EOF >actual &&
-
read
1
+
binary
1
copy 5
foo
copy 5
foo
diff --git
a/test-line-buffer.c
b/test-line-buffer.c
index 25b20b93fd4a1113629c99bd5a53dfee965119c1..7ec9b13c9b2ceb84fb6dd0dd229e9f6cb8c1a635 100644
(file)
--- a/
test-line-buffer.c
+++ b/
test-line-buffer.c
@@
-32,12
+32,6
@@
static void handle_command(const char *command, const char *arg, struct line_buf
buffer_copy_bytes(buf, strtouint32(arg));
return;
}
buffer_copy_bytes(buf, strtouint32(arg));
return;
}
- case 'r':
- if (!prefixcmp(command, "read ")) {
- const char *s = buffer_read_string(buf, strtouint32(arg));
- fputs(s, stdout);
- return;
- }
case 's':
if (!prefixcmp(command, "skip ")) {
buffer_skip_bytes(buf, strtouint32(arg));
case 's':
if (!prefixcmp(command, "skip ")) {
buffer_skip_bytes(buf, strtouint32(arg));
diff --git
a/vcs-svn/line_buffer.c
b/vcs-svn/line_buffer.c
index 33e733a04c2b694a7dce80c8404edd464fe1a6b7..c39038723ed4a90f99f70a694eae58ba488556b6 100644
(file)
--- a/
vcs-svn/line_buffer.c
+++ b/
vcs-svn/line_buffer.c
@@
-91,13
+91,6
@@
char *buffer_read_line(struct line_buffer *buf)
return buf->line_buffer;
}
return buf->line_buffer;
}
-char *buffer_read_string(struct line_buffer *buf, uint32_t len)
-{
- strbuf_reset(&buf->blob_buffer);
- strbuf_fread(&buf->blob_buffer, len, buf->infile);
- return ferror(buf->infile) ? NULL : buf->blob_buffer.buf;
-}
-
void buffer_read_binary(struct line_buffer *buf,
struct strbuf *sb, uint32_t size)
{
void buffer_read_binary(struct line_buffer *buf,
struct strbuf *sb, uint32_t size)
{
@@
-134,5
+127,4
@@
off_t buffer_skip_bytes(struct line_buffer *buf, off_t nbytes)
void buffer_reset(struct line_buffer *buf)
{
void buffer_reset(struct line_buffer *buf)
{
- strbuf_release(&buf->blob_buffer);
}
}
diff --git
a/vcs-svn/line_buffer.h
b/vcs-svn/line_buffer.h
index f5c468afa45f1f567dc5cc2b3e2e748b79fe5cb0..d0b22dda76e8a193f15fa5483abd217cdde101da 100644
(file)
--- a/
vcs-svn/line_buffer.h
+++ b/
vcs-svn/line_buffer.h
@@
-7,10
+7,9
@@
struct line_buffer {
char line_buffer[LINE_BUFFER_LEN];
struct line_buffer {
char line_buffer[LINE_BUFFER_LEN];
- struct strbuf blob_buffer;
FILE *infile;
};
FILE *infile;
};
-#define LINE_BUFFER_INIT {
"", STRBUF_INIT, NULL
}
+#define LINE_BUFFER_INIT {
"", NULL
}
int buffer_init(struct line_buffer *buf, const char *filename);
int buffer_fdinit(struct line_buffer *buf, int fd);
int buffer_init(struct line_buffer *buf, const char *filename);
int buffer_fdinit(struct line_buffer *buf, int fd);
@@
-23,7
+22,6
@@
long buffer_tmpfile_prepare_to_read(struct line_buffer *buf);
int buffer_ferror(struct line_buffer *buf);
char *buffer_read_line(struct line_buffer *buf);
int buffer_ferror(struct line_buffer *buf);
char *buffer_read_line(struct line_buffer *buf);
-char *buffer_read_string(struct line_buffer *buf, uint32_t len);
int buffer_read_char(struct line_buffer *buf);
void buffer_read_binary(struct line_buffer *buf, struct strbuf *sb, uint32_t len);
/* Returns number of bytes read (not necessarily written). */
int buffer_read_char(struct line_buffer *buf);
void buffer_read_binary(struct line_buffer *buf, struct strbuf *sb, uint32_t len);
/* Returns number of bytes read (not necessarily written). */
diff --git
a/vcs-svn/line_buffer.txt
b/vcs-svn/line_buffer.txt
index 4ef0755cf53e4ee220f1906be7c0cd54ff3265ab..8e139eb22df0f44ba0b805b374943dd5d12e8437 100644
(file)
--- a/
vcs-svn/line_buffer.txt
+++ b/
vcs-svn/line_buffer.txt
@@
-16,8
+16,8
@@
The calling program:
- initializes a `struct line_buffer` to LINE_BUFFER_INIT
- specifies a file to read with `buffer_init`
- initializes a `struct line_buffer` to LINE_BUFFER_INIT
- specifies a file to read with `buffer_init`
- - processes input with `buffer_read_line`, `buffer_
read_string
`,
-
`buffer_skip_bytes`,
and `buffer_copy_bytes`
+ - processes input with `buffer_read_line`, `buffer_
skip_bytes
`,
+ and `buffer_copy_bytes`
- closes the file with `buffer_deinit`, perhaps to start over and
read another file.
- closes the file with `buffer_deinit`, perhaps to start over and
read another file.
@@
-37,7
+37,7
@@
the calling program. A program
the temporary file
- declares writing is over with `buffer_tmpfile_prepare_to_read`
- can re-read what was written with `buffer_read_line`,
the temporary file
- declares writing is over with `buffer_tmpfile_prepare_to_read`
- can re-read what was written with `buffer_read_line`,
- `buffer_
read_string
`, and so on
+ `buffer_
copy_bytes
`, and so on
- can reuse the temporary file by calling `buffer_tmpfile_rewind`
again
- removes the temporary file with `buffer_deinit`, perhaps to
- can reuse the temporary file by calling `buffer_tmpfile_rewind`
again
- removes the temporary file with `buffer_deinit`, perhaps to
@@
-64,12
+64,6
@@
Functions
Read a line and strip off the trailing newline.
On failure or end of file, returns NULL.
Read a line and strip off the trailing newline.
On failure or end of file, returns NULL.
-`buffer_read_string`::
- Read `len` characters of input or up to the end of the
- file, whichever comes first. Returns NULL on error.
- Returns whatever characters were read (possibly "")
- for end of file.
-
`buffer_copy_bytes`::
Read `len` bytes of input and dump them to the standard output
stream. Returns early for error or end of file.
`buffer_copy_bytes`::
Read `len` bytes of input and dump them to the standard output
stream. Returns early for error or end of file.