summaryrefslogtreecommitdiff
path: root/beos/beos_filetype.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'beos/beos_filetype.cpp')
-rw-r--r--beos/beos_filetype.cpp179
1 files changed, 2 insertions, 177 deletions
diff --git a/beos/beos_filetype.cpp b/beos/beos_filetype.cpp
index 1b5b94302..1fa6ff027 100644
--- a/beos/beos_filetype.cpp
+++ b/beos/beos_filetype.cpp
@@ -1,7 +1,5 @@
/*
* Copyright 2008 Fran├žois Revol <mmu_man@users.sourceforge.net>
- * Copyright 2007 Rob Kendrick <rjek@netsurf-browser.org>
- * Copyright 2007 Vincent Sanders <vince@debian.org>
*
* This file is part of NetSurf, http://www.netsurf-browser.org/
*
@@ -41,11 +39,9 @@ extern "C" {
#include "beos/beos_filetype.h"
-#warning REMOVEME
-static struct hash_table *mime_hash = NULL;
-
-void beos_fetch_filetype_init(const char *mimefile)
+void beos_fetch_filetype_init(void)
{
+#if 0
BMessage mimes;
status_t err;
@@ -83,115 +79,11 @@ void beos_fetch_filetype_init(const char *mimefile)
hash_add(mime_hash, ext.String(), type.String());
}
}
-
-#warning WRITEME
-#if 0
- struct stat statbuf;
- FILE *fh = NULL;
-
- /* first, check to see if /etc/mime.types in preference */
-
- if ((stat("/etc/mime.types", &statbuf) == 0) &&
- S_ISREG(statbuf.st_mode)) {
- mimefile = "/etc/mime.types";
-
- }
-
- fh = fopen(mimefile, "r");
-
- /* Some OSes (mentioning no Solarises) have a worthlessly tiny
- * /etc/mime.types that don't include essential things, so we
- * pre-seed our hash with the essentials. These will get
- * over-ridden if they are mentioned in the mime.types file.
- */
-
- hash_add(mime_hash, "css", "text/css");
- hash_add(mime_hash, "htm", "text/html");
- hash_add(mime_hash, "html", "text/html");
- hash_add(mime_hash, "jpg", "image/jpeg");
- hash_add(mime_hash, "jpeg", "image/jpeg");
- hash_add(mime_hash, "gif", "image/gif");
- hash_add(mime_hash, "png", "image/png");
- hash_add(mime_hash, "jng", "image/jng");
-
- if (fh == NULL) {
- LOG(("Unable to open a mime.types file, so using a minimal one for you."));
- return;
- }
-
- while (!feof(fh)) {
- char line[256], *ptr, *type, *ext;
- fgets(line, 256, fh);
- if (!feof(fh) && line[0] != '#') {
- ptr = line;
-
- /* search for the first non-whitespace character */
- while (isspace(*ptr))
- ptr++;
-
- /* is this line empty other than leading whitespace? */
- if (*ptr == '\n' || *ptr == '\0')
- continue;
-
- type = ptr;
-
- /* search for the first non-whitespace char or NUL or
- * NL */
- while (*ptr && (!isspace(*ptr)) && *ptr != '\n')
- ptr++;
-
- if (*ptr == '\0' || *ptr == '\n') {
- /* this mimetype has no extensions - read next
- * line.
- */
- continue;
- }
-
- *ptr++ = '\0';
-
- /* search for the first non-whitespace character which
- * will be the first filename extenion */
- while (isspace(*ptr))
- ptr++;
-
- while(true) {
- ext = ptr;
-
- /* search for the first whitespace char or
- * NUL or NL which is the end of the ext.
- */
- while (*ptr && (!isspace(*ptr)) &&
- *ptr != '\n')
- ptr++;
-
- if (*ptr == '\0' || *ptr == '\n') {
- /* special case for last extension on
- * the line
- */
- *ptr = '\0';
- hash_add(mime_hash, ext, type);
- break;
- }
-
- *ptr++ = '\0';
- hash_add(mime_hash, ext, type);
-
- /* search for the first non-whitespace char or
- * NUL or NL, to find start of next ext.
- */
- while (*ptr && (isspace(*ptr)) && *ptr != '\n')
- ptr++;
- }
- }
- }
-
- fclose(fh);
#endif
}
void beos_fetch_filetype_fin(void)
{
- hash_destroy(mime_hash);
}
const char *fetch_filetype(const char *unix_path)
@@ -243,48 +135,6 @@ const char *fetch_filetype(const char *unix_path)
}
return type;
-
-#warning WRITEME
-#if 0
- struct stat statbuf;
- char *ext;
- const char *ptr;
- char *lowerchar;
- const char *type;
-
- stat(unix_path, &statbuf);
- if (S_ISDIR(statbuf.st_mode))
- return "application/x-netsurf-directory";
-
- if (strchr(unix_path, '.') == NULL) {
- /* no extension anywhere! */
- return "text/plain";
- }
-
- ptr = unix_path + strlen(unix_path);
- while (*ptr != '.' && *ptr != '/')
- ptr--;
-
- if (*ptr != '.')
- return "text/plain";
-
- ext = strdup(ptr + 1); /* skip the . */
-
- /* the hash table only contains lower-case versions - make sure this
- * copy is lower case too.
- */
- lowerchar = ext;
- while(*lowerchar) {
- *lowerchar = tolower(*lowerchar);
- lowerchar++;
- }
-
- type = hash_get(mime_hash, ext);
- free(ext);
-
- return type != NULL ? type : "text/plain";
-#endif
- return NULL;
}
char *fetch_mimetype(const char *unix_path)
@@ -292,28 +142,3 @@ char *fetch_mimetype(const char *unix_path)
return strdup(fetch_filetype(unix_path));
}
-#ifdef TEST_RIG
-
-int main(int argc, char *argv[])
-{
- unsigned int c1, *c2;
- const char *key;
-
- beos_fetch_filetype_init("./mime.types");
-
- c1 = 0; c2 = 0;
-
- while ( (key = hash_iterate(mime_hash, &c1, &c2)) != NULL) {
- printf("%s ", key);
- }
-
- printf("\n");
-
- if (argc > 1) {
- printf("%s maps to %s\n", argv[1], fetch_filetype(argv[1]));
- }
-
- beos_fetch_filetype_fin();
-}
-
-#endif