summaryrefslogtreecommitdiff
path: root/utils/file.c
Commit message (Collapse)AuthorAgeFilesLines
* URL escape: Simplify to avoid unnecessary allocation.Michael Drake2016-07-251-1/+1
| | | | | | | | This removes the toskip parameter, which was only used by the RISC OS front end. The toskip param was used to skip 8 characters which did not need to be escaped from the start of the URL. The RISC OS front end now orders the steps of its URL construction to avoid the need for this.
* URL unescape: return the new length to the caller.Michael Drake2016-07-241-0/+1
| | | | | | | | The avoids situations were we threw away the length, only for the caller to have to strlen the returned string. Note, there seems to be a case of the amiga front end writing beyond end of allocation. Added a TODO for now.
* reduce curl usage to fetcher, url unescaping and time parsingVincent Sanders2016-06-291-1/+3
|
* Split utils header into string functions and everything elseVincent Sanders2016-04-211-0/+1
| | | | | split out the string handling API from the rest of the utils header and fix up all the fallout.
* Improve Doxygen documentationVincent Sanders2014-11-081-1/+1
|
* Fix several doxygen issuesVincent Sanders2014-11-081-2/+2
|
* Update the core to use the split operations table headersVincent Sanders2014-10-161-1/+1
| | | | Second in the series to decouple the core API usage from the frontends.
* extend file table with mkdir all and make fs backing store use it.Vincent Sanders2014-06-051-0/+73
| | | | enable fs backing store for RISC OS.
* rework path to url mapping functions to convert from and to nsurlVincent Sanders2014-05-261-7/+127
|
* we now ensure the operations table is set up early enough the null check is ↵Vincent Sanders2014-05-101-6/+1
| | | | not required
* fix silly errors in atari and amiga file operation table changeVincent Sanders2014-05-071-2/+2
|
* add file operations table and make all frontends use it.Vincent Sanders2014-05-071-0/+117
This rationalises the path construction and basename file operations. The default implementation is POSIX which works for all frontends except windows, riscos and amiga which have differeing path separators and rules. These implementations are significantly more robust than the previous nine implementations and also do not use unsafe strncpy or buffers with arbitrary length limits. These implementations also carry full documentation comments.