diff --git a/epan/tvbuff.c b/epan/tvbuff.c
index db2cfd1..752393b 100644
--- a/epan/tvbuff.c
+++ b/epan/tvbuff.c
@@ -3433,7 +3433,7 @@ tvb_uncompress(tvbuff_t *tvb, const int offset, int comprlen)
guint bytes_in = tvb_length_remaining(tvb, offset);
#endif
- if (tvb == NULL) {
+ if (tvb == NULL || comprlen <= 0) {
return NULL;
}