- fix crashes when adding a new network folder (kdebug:162285) - KFileMetaInfo freezes when Strigi indexes non-sequential files (kdebug:163050) - renaming in FTP overwrites existing files without confirmation (kdebug:127793)
29 lines
866 B
Diff
29 lines
866 B
Diff
--- kdelibs/kio/kio/kfilemetainfo.cpp 2008/06/06 22:10:03 817892
|
|
+++ kdelibs/kio/kio/kfilemetainfo.cpp 2008/06/06 22:13:15 817893
|
|
@@ -56,7 +56,7 @@
|
|
QIODevice& in;
|
|
int32_t fillBuffer(char* start, int32_t space);
|
|
public:
|
|
- QIODeviceInputStream(QIODevice& i) :in(i) {}
|
|
+ QIODeviceInputStream(QIODevice& i);
|
|
};
|
|
int32_t
|
|
QIODeviceInputStream::fillBuffer(char* start, int32_t space) {
|
|
@@ -74,6 +74,16 @@
|
|
}
|
|
return nwritten;
|
|
}
|
|
+
|
|
+QIODeviceInputStream::QIODeviceInputStream(QIODevice &i) :in(i)
|
|
+{
|
|
+ // determine if we have a character device, which will likely never eof and thereby
|
|
+ // potentially cause an infinite loop.
|
|
+ if(i.isSequential()) {
|
|
+ in.close(); // cause fillBuffer to return -1
|
|
+ }
|
|
+}
|
|
+
|
|
/**
|
|
* @brief KMetaInfoWriter handles the data returned by the Strigi analyzers and
|
|
* store it in a KFileMetaInfo.
|