summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@src.gnome.org>2001-09-20 21:51:05 +0000
committerJeffrey Stedfast <fejj@src.gnome.org>2001-09-20 21:51:05 +0000
commit493f5a9acad2020dd2b16d545380af11927b03b2 (patch)
tree9204cf7e45ab1e59d59d8e0731615e80b23ea526
parent9d7317c5971afc12a6ffd6246ad9c7e3aa7ad391 (diff)
downloadgmime-493f5a9acad2020dd2b16d545380af11927b03b2.tar.gz
do some bounds checking
-rw-r--r--ChangeLog6
-rw-r--r--gmime-stream-mem.c2
-rw-r--r--gmime-stream.c3
-rw-r--r--gmime/gmime-stream-mem.c2
-rw-r--r--gmime/gmime-stream.c3
5 files changed, 14 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index a86eb356..5604cb44 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2001-09-20 Jeffrey Stedfast <fejj@ximian.com>
+ * gmime-stream-mem.c (stream_eos): Check for position >= instead
+ of == bound_end
+
+ * gmime-stream.c (g_mime_stream_eos): Do some simple bounds
+ checking.
+
* doc/*: Updated.
* gmime-part.c (g_mime_part_get_content_object): Added.
diff --git a/gmime-stream-mem.c b/gmime-stream-mem.c
index f3754572..156fb790 100644
--- a/gmime-stream-mem.c
+++ b/gmime-stream-mem.c
@@ -109,7 +109,7 @@ stream_eos (GMimeStream *stream)
{
GMimeStreamMem *mem = (GMimeStreamMem *) stream;
- return mem->buffer ? stream->position == stream->bound_end : TRUE;
+ return mem->buffer ? stream->position >= stream->bound_end : TRUE;
}
static int
diff --git a/gmime-stream.c b/gmime-stream.c
index a6ea4f66..921dca8a 100644
--- a/gmime-stream.c
+++ b/gmime-stream.c
@@ -147,6 +147,9 @@ g_mime_stream_eos (GMimeStream *stream)
{
g_return_val_if_fail (stream != NULL, TRUE);
+ if (stream->bound_end != -1 && stream->position >= stream->bound_end)
+ return TRUE;
+
return stream->eos (stream);
}
diff --git a/gmime/gmime-stream-mem.c b/gmime/gmime-stream-mem.c
index f3754572..156fb790 100644
--- a/gmime/gmime-stream-mem.c
+++ b/gmime/gmime-stream-mem.c
@@ -109,7 +109,7 @@ stream_eos (GMimeStream *stream)
{
GMimeStreamMem *mem = (GMimeStreamMem *) stream;
- return mem->buffer ? stream->position == stream->bound_end : TRUE;
+ return mem->buffer ? stream->position >= stream->bound_end : TRUE;
}
static int
diff --git a/gmime/gmime-stream.c b/gmime/gmime-stream.c
index a6ea4f66..921dca8a 100644
--- a/gmime/gmime-stream.c
+++ b/gmime/gmime-stream.c
@@ -147,6 +147,9 @@ g_mime_stream_eos (GMimeStream *stream)
{
g_return_val_if_fail (stream != NULL, TRUE);
+ if (stream->bound_end != -1 && stream->position >= stream->bound_end)
+ return TRUE;
+
return stream->eos (stream);
}