|
a/src/internfile/mimehandler.cpp |
|
b/src/internfile/mimehandler.cpp |
|
... |
|
... |
51 |
|
51 |
|
52 |
/** For mime types set as "internal" in mimeconf:
|
52 |
/** For mime types set as "internal" in mimeconf:
|
53 |
* create appropriate handler object. */
|
53 |
* create appropriate handler object. */
|
54 |
static Dijon::Filter *mhFactory(const string &mime)
|
54 |
static Dijon::Filter *mhFactory(const string &mime)
|
55 |
{
|
55 |
{
|
|
|
56 |
LOGDEB2(("mhFactory(%s)\n", mime.c_str()));
|
56 |
string lmime(mime);
|
57 |
string lmime(mime);
|
57 |
stringtolower(lmime);
|
58 |
stringtolower(lmime);
|
58 |
if ("text/plain" == lmime) {
|
59 |
if ("text/plain" == lmime) {
|
59 |
return new MimeHandlerText(lmime);
|
60 |
return new MimeHandlerText(lmime);
|
60 |
} else if ("text/html" == lmime) {
|
61 |
} else if ("text/html" == lmime) {
|
|
... |
|
... |
121 |
if (attrs.get("charset", value))
|
122 |
if (attrs.get("charset", value))
|
122 |
h->cfgFilterOutputCharset = stringtolower((const string&)value);
|
123 |
h->cfgFilterOutputCharset = stringtolower((const string&)value);
|
123 |
if (attrs.get("mimetype", value))
|
124 |
if (attrs.get("mimetype", value))
|
124 |
h->cfgFilterOutputMtype = stringtolower((const string&)value);
|
125 |
h->cfgFilterOutputMtype = stringtolower((const string&)value);
|
125 |
|
126 |
|
126 |
#if 1
|
127 |
#if 0
|
127 |
string scmd;
|
128 |
string scmd;
|
128 |
for (it = h->params.begin(); it != h->params.end(); it++) {
|
129 |
for (it = h->params.begin(); it != h->params.end(); it++) {
|
129 |
scmd += string("[") + *it + "] ";
|
130 |
scmd += string("[") + *it + "] ";
|
130 |
}
|
131 |
}
|
131 |
LOGDEB(("mhExecFactory:mt [%s] cfgmt [%s] cfgcs [%s] cmd: [%s]\n",
|
132 |
LOGDEB(("mhExecFactory:mt [%s] cfgmt [%s] cfgcs [%s] cmd: [%s]\n",
|
|
... |
|
... |
200 |
// types like text/x-purple-html-log (for ie: specific
|
201 |
// types like text/x-purple-html-log (for ie: specific
|
201 |
// icon) and still use the html filter on them. This is
|
202 |
// icon) and still use the html filter on them. This is
|
202 |
// partly redundant with the localfields/rclaptg, but
|
203 |
// partly redundant with the localfields/rclaptg, but
|
203 |
// better and the latter will probably go away at some
|
204 |
// better and the latter will probably go away at some
|
204 |
// point in the future
|
205 |
// point in the future
|
|
|
206 |
LOGDEB2(("handlertype internal, cmdstr [%s]\n", cmdstr.c_str()));
|
205 |
if (!cmdstr.empty())
|
207 |
if (!cmdstr.empty())
|
206 |
h = mhFactory(cmdstr);
|
208 |
h = mhFactory(cmdstr);
|
|
|
209 |
else
|
207 |
h = mhFactory(mtype);
|
210 |
h = mhFactory(mtype);
|
208 |
goto out;
|
211 |
goto out;
|
209 |
} else if (!stringlowercmp("dll", handlertype)) {
|
212 |
} else if (!stringlowercmp("dll", handlertype)) {
|
210 |
} else {
|
213 |
} else {
|
211 |
if (cmdstr.empty()) {
|
214 |
if (cmdstr.empty()) {
|
212 |
LOGERR(("getMimeHandler: bad line for %s: %s\n",
|
215 |
LOGERR(("getMimeHandler: bad line for %s: %s\n",
|