allow working on memory string
This commit is contained in:
parent
24d8fbf7f2
commit
3fcde55ff4
@ -57,20 +57,14 @@ static const int nmh = sizeof(mailhs) / sizeof(char *);
|
|||||||
|
|
||||||
const int wantnhead = 3;
|
const int wantnhead = 3;
|
||||||
|
|
||||||
string idFile(const char *fn)
|
// fn is for message printing
|
||||||
|
static string idFileInternal(istream& input, const char *fn)
|
||||||
{
|
{
|
||||||
static int treat_mbox_as_rfc822;
|
static int treat_mbox_as_rfc822;
|
||||||
if (treat_mbox_as_rfc822 == 0) {
|
if (treat_mbox_as_rfc822 == 0) {
|
||||||
treat_mbox_as_rfc822 = getenv("RECOLL_TREAT_MBOX_AS_RFC822") ? 1 : -1;
|
treat_mbox_as_rfc822 = getenv("RECOLL_TREAT_MBOX_AS_RFC822") ? 1 : -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
ifstream input;
|
|
||||||
input.open(fn, ios::in);
|
|
||||||
if (!input.is_open()) {
|
|
||||||
LOGERR(("idFile: could not open [%s]\n", fn));
|
|
||||||
return string();
|
|
||||||
}
|
|
||||||
|
|
||||||
bool line1HasFrom = false;
|
bool line1HasFrom = false;
|
||||||
bool gotnonempty = false;
|
bool gotnonempty = false;
|
||||||
int lookslikemail = 0;
|
int lookslikemail = 0;
|
||||||
@ -162,6 +156,22 @@ string idFile(const char *fn)
|
|||||||
return string();
|
return string();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
string idFile(const char *fn)
|
||||||
|
{
|
||||||
|
ifstream input;
|
||||||
|
input.open(fn, ios::in);
|
||||||
|
if (!input.is_open()) {
|
||||||
|
LOGERR(("idFile: could not open [%s]\n", fn));
|
||||||
|
return string();
|
||||||
|
}
|
||||||
|
return idFileInternal(input, fn);
|
||||||
|
}
|
||||||
|
|
||||||
|
string idFileMem(const string& data)
|
||||||
|
{
|
||||||
|
stringstream s(data, stringstream::in);
|
||||||
|
return idFileInternal(s, "");
|
||||||
|
}
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
|
|||||||
@ -21,10 +21,13 @@
|
|||||||
#include <string>
|
#include <string>
|
||||||
#include <list>
|
#include <list>
|
||||||
|
|
||||||
// Return mime type for file or empty string. The system's file utility does
|
// Look at data inside file or string, and return mime type or empty string.
|
||||||
// a bad job on mail folders. idFile only looks for mail file types for now,
|
//
|
||||||
// but this may change
|
// The system's file utility does a bad job on mail folders. idFile
|
||||||
|
// only looks for mail file types for now, but this may change
|
||||||
|
|
||||||
extern std::string idFile(const char *fn);
|
extern std::string idFile(const char *fn);
|
||||||
|
extern std::string idFileMem(const std::string& data);
|
||||||
|
|
||||||
// Return all types known to us
|
// Return all types known to us
|
||||||
extern std::list<std::string> idFileAllTypes();
|
extern std::list<std::string> idFileAllTypes();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user