canonicalize_filename(3alleg)

canonicalize_filename3alleg

Converts any filename into its canonical form. allegro game programming library.

Usage

#include <allegro.h>

char *canonicalize_filename(char *dest, const char *filename, int size);

Overview

Converts any filename into its canonical form, i.e. the minimal absolute filename describing the same file and fixing incorrect forward/backward slashes for the current platform, storing at most `size' bytes into the `dest' buffer. You can use the same buffer both as input and output because Allegro internally works on a copy of the input before touching `dest'. Example:

   char buf[256];
   ...
   canonicalize_filename(buf, "~/../s22/..\\t3st///hi.c",
                         sizeof(buf));
   /* Running this under Unix would
      return: /home/t3st/hi.c */

Note that this function won't work as expected if the path to canonicalize comes from another platform (eg. a "c:\something" path will canonicalize into something really wrong under Unix: "/current/path/c:/something").

Return value

Returns a copy of the `dest' parameter.

Releases

4 releases since Debian 3.1 (Sarge); the text changed 2 times.

  1. 3.1
  2. 4.0
  3. 5.0–6.0

From liballegro-doc 2:4.2.2-2.2 in Debian 6.0 (Squeeze). Parsed by carta from the page's man source.