From d8d66504d736fd87fcd1b81e406d91a1297bd21c Mon Sep 17 00:00:00 2001
From: chrfranke <chrfranke@4ea69e1a-61f1-4043-bf83-b5c94c648137>
Date: Sat, 19 Dec 2009 19:39:12 +0000
Subject: [PATCH] Cygwin: Open drive database files in text mode.

git-svn-id: https://smartmontools.svn.sourceforge.net/svnroot/smartmontools/trunk@3004 4ea69e1a-61f1-4043-bf83-b5c94c648137
---
 smartmontools/CHANGELOG       | 2 ++
 smartmontools/knowndrives.cpp | 6 +++++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/smartmontools/CHANGELOG b/smartmontools/CHANGELOG
index e2f1aab2c..2515c9c16 100644
--- a/smartmontools/CHANGELOG
+++ b/smartmontools/CHANGELOG
@@ -43,6 +43,8 @@ NOTES FOR FUTURE RELEASES: see TODO file.
 
 <DEVELOPERS: ADDITIONS TO THE CHANGE LOG GO JUST BELOW HERE, PLEASE>
 
+  [CF] Cygwin: Open drive database files in text mode.
+
   [CF] Cygwin: Check for 'syslogd' and 'syslog-ng' in initd script.
 
   [CF] Windows: Disable Win9x/ME specific code if no longer supported
diff --git a/smartmontools/knowndrives.cpp b/smartmontools/knowndrives.cpp
index 8f9a91704..79e538249 100644
--- a/smartmontools/knowndrives.cpp
+++ b/smartmontools/knowndrives.cpp
@@ -674,7 +674,11 @@ static bool parse_drive_database(parse_ptr src, drive_database & db, const char
 // Read drive database from file.
 bool read_drive_database(const char * path)
 {
-  stdio_file f(path, "r");
+  stdio_file f(path, "r"
+#ifdef __CYGWIN__ // Allow files with '\r\n'.
+                      "t"
+#endif
+                         );
   if (!f) {
     pout("%s: cannot open drive database file\n", path);
     return false;
-- 
GitLab