mirror of
https://github.com/netsurf-browser/netsurf
synced 2024-11-24 23:39:51 +03:00
More rigourous MIME type checking for CSS allows us to remove the icons from included
CSS files. svn path=/trunk/netsurf/; revision=12049
This commit is contained in:
parent
7acc13d863
commit
1cfc5b8970
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2008 Chris Young <chris@unsatisfactorysoftware.co.uk>
|
||||
* Copyright 2008, 2011 Chris Young <chris@unsatisfactorysoftware.co.uk>
|
||||
*
|
||||
* This file is part of NetSurf, http://www.netsurf-browser.org/
|
||||
*
|
||||
@ -51,16 +51,6 @@ const char *fetch_filetype(const char *unix_path)
|
||||
found = TRUE;
|
||||
}
|
||||
|
||||
/* Have a quick check for the RISC OS CSS filetype. Some of the redirects
|
||||
* caused by links in the SVN tree prevent NetSurf from reading the MIME
|
||||
* type from the icon (step two, below).
|
||||
*/
|
||||
|
||||
if(strncmp(unix_path + strlen(unix_path) - 4, ",f79", 4) == 0)
|
||||
{
|
||||
strcpy(mimetype,"text/css");
|
||||
found = TRUE;
|
||||
}
|
||||
|
||||
/* Secondly try getting a tooltype "MIMETYPE" and use that as the MIME type.
|
||||
Will fail over to default icons if the file doesn't have a real icon. */
|
||||
@ -99,7 +89,31 @@ const char *fetch_filetype(const char *unix_path)
|
||||
}
|
||||
}
|
||||
|
||||
if(!found) strcpy(mimetype,"text/html"); /* If all else fails */
|
||||
/* Have a quick check for file extensions (inc RISC OS filetype).
|
||||
* Makes detection a little more robust, and some of the redirects
|
||||
* caused by links in the SVN tree prevent NetSurf from reading the
|
||||
* MIME type from the icon (step two, above).
|
||||
*/
|
||||
|
||||
if((!found) || (strcmp("text/plain", mimetype) == 0))
|
||||
{
|
||||
if((strncmp(unix_path + strlen(unix_path) - 4, ".css", 4) == 0) ||
|
||||
(strncmp(unix_path + strlen(unix_path) - 4, ",f79", 4) == 0))
|
||||
{
|
||||
strcpy(mimetype,"text/css");
|
||||
found = TRUE;
|
||||
}
|
||||
|
||||
if((strncmp(unix_path + strlen(unix_path) - 4, ".htm", 4) == 0) ||
|
||||
(strncmp(unix_path + strlen(unix_path) - 5, ".html", 5) == 0) ||
|
||||
(strncmp(unix_path + strlen(unix_path) - 4, ",faf", 4) == 0))
|
||||
{
|
||||
strcpy(mimetype,"text/html");
|
||||
found = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
if(!found) strcpy(mimetype,"text/plain"); /* If all else fails */
|
||||
|
||||
return mimetype;
|
||||
}
|
||||
|
17
amiga/gui.c
17
amiga/gui.c
@ -452,14 +452,19 @@ char* gui_find_resource(const char *filename)
|
||||
|
||||
if(ami_locate_resource(path, filename) == false)
|
||||
{
|
||||
/* Try with RISC OS HTML filetype, might work */
|
||||
strcpy(filename2, filename);
|
||||
strcat(filename2, ",faf");
|
||||
|
||||
if(ami_locate_resource(path, filename2) == false)
|
||||
if((strncmp(filename + strlen(filename) - 4, ".htm", 4) == 0) ||
|
||||
(strncmp(filename + strlen(filename) - 5, ".html", 5) == 0))
|
||||
{
|
||||
return NULL;
|
||||
/* Try with RISC OS HTML filetype, might work */
|
||||
strcpy(filename2, filename);
|
||||
strcat(filename2, ",faf");
|
||||
|
||||
if(ami_locate_resource(path, filename2) == false)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
else return NULL;
|
||||
}
|
||||
|
||||
return path_to_url(path);
|
||||
|
Binary file not shown.
@ -16,6 +16,9 @@
|
||||
# theme_throbber is a film strip of theme_throbber_frames frames
|
||||
# The first frame must be the inactive image.
|
||||
#
|
||||
# Various default CSS styles can be overridden by adding a file
|
||||
# "amiga.css" in this directory.
|
||||
#
|
||||
theme_nav_west:back.png
|
||||
theme_nav_west_s:back_h.png
|
||||
theme_nav_west_g:back_g.png
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user