summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorRichard Wilson <rjw@netsurf-browser.org>2006-09-02 15:52:41 +0000
committerRichard Wilson <rjw@netsurf-browser.org>2006-09-02 15:52:41 +0000
commit74fa727509874983884a35b44b646be034b1fd69 (patch)
tree1daf083961efd039e318c7a1157b6aa2a83b9d54 /utils
parentb51f807fe326f6d9aec0600cbf526f96db7577d0 (diff)
downloadnetsurf-74fa727509874983884a35b44b646be034b1fd69.tar.gz
netsurf-74fa727509874983884a35b44b646be034b1fd69.tar.bz2
Experimental new frames code.
svn path=/trunk/netsurf/; revision=2906
Diffstat (limited to 'utils')
-rw-r--r--utils/filename.c24
-rw-r--r--utils/filename.h1
2 files changed, 25 insertions, 0 deletions
diff --git a/utils/filename.c b/utils/filename.c
index 82a0c9965..8b64ccfc8 100644
--- a/utils/filename.c
+++ b/utils/filename.c
@@ -19,6 +19,7 @@
#include <sys/stat.h>
#include "netsurf/utils/filename.h"
#include "netsurf/utils/log.h"
+#include "netsurf/utils/url.h"
#include "netsurf/utils/utils.h"
#define FULL_WORD (unsigned int)4294967295
@@ -422,3 +423,26 @@ static struct directory *filename_create_directory(const char *prefix) {
return new_dir;
}
+
+
+/**
+ * Converts a filename into a local URL
+ *
+ * \param filename the filename to convert
+ * \return a local URL allocated on heap, or NULL on failure.
+ */
+char *filename_as_url(const char *filename) {
+ char *temp, *url;
+ int length;
+
+ length = strlen(TEMP_FILENAME_PREFIX) + strlen(filename) + 2;
+ temp = malloc(length);
+ if (!temp) {
+ LOG(("No memory for malloc()"));
+ return NULL;
+ }
+ sprintf(temp, "%s/%s", TEMP_FILENAME_PREFIX, filename);
+ url = path_to_url(temp);
+ free(temp);
+ return url;
+}
diff --git a/utils/filename.h b/utils/filename.h
index dab072b08..f38a29cb8 100644
--- a/utils/filename.h
+++ b/utils/filename.h
@@ -21,5 +21,6 @@ bool filename_claim(const char *filename);
void filename_release(const char *filename);
bool filename_initialise(void);
void filename_flush(void);
+char *filename_as_url(const char *filename);
#endif