-From fc2314965332d9f9efb3f79f500f4ddbf76e91f8 Mon Sep 17 00:00:00 2001
+From 175235bdb5cf01714bb8f4b99d1d787a81a3d2ce Mon Sep 17 00:00:00 2001
From: Ian Jackson <ijackson@chiark.greenend.org.uk>
Date: Fri, 4 Nov 2016 13:55:19 +0000
Subject: [PATCH] provide dpkg --filter-valid-versions
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
---
- src/enquiry.c | 20 ++++++++++++++++++++
+ src/enquiry.c | 23 +++++++++++++++++++++++
src/main.c | 1 +
src/main.h | 2 ++
- 3 files changed, 23 insertions(+)
+ 3 files changed, 26 insertions(+)
diff --git a/src/enquiry.c b/src/enquiry.c
-index 9f71863..b5010ad 100644
+index 9f71863..09b5748 100644
--- a/src/enquiry.c
+++ b/src/enquiry.c
-@@ -694,3 +694,23 @@ cmpversions(const char *const *argv)
+@@ -694,3 +694,26 @@ cmpversions(const char *const *argv)
else
return rip->if_equal;
}
+{
+ char buf[100];
+ char *newline;
-+ struct dpkg_error err;
++ struct dpkg_error err = DPKG_ERROR_INIT;
+ struct dpkg_version vp;
+
+ while (fgets(buf,sizeof(buf),stdin)) {
+ newline = strchr(buf,'\n');
+ assert(newline);
+ *newline = 0;
-+ if (parseversion(&vp, buf, &err))
++ if (parseversion(&vp, buf, &err)) {
++ dpkg_error_destroy(&err);
+ continue;
++ }
+ puts(buf);
++ nffreeall();
+ }
+ assert(feof(stdin));
+ return 0;