summaryrefslogtreecommitdiff
path: root/src/xine-engine/osd.c
diff options
context:
space:
mode:
authorDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2008-05-07 17:49:47 +0200
committerDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2008-05-07 17:49:47 +0200
commitc3744b6736ce45c1c700b7f026fb0acfb0069a6d (patch)
treef92efb8a27043f24f2ef5d4a916f23a769634b15 /src/xine-engine/osd.c
parent4527fd438b39dc312c69839f051e0a2ac0046356 (diff)
downloadxine-lib-c3744b6736ce45c1c700b7f026fb0acfb0069a6d.tar.gz
xine-lib-c3744b6736ce45c1c700b7f026fb0acfb0069a6d.tar.bz2
Use asprintf() rather than malloc() + sprintf().
Using asprintf() instead of malloc() + sprintf() reduces the lines of code in xine-lib (moving the allocation to the C library or asprintf replacement), makes it safer to access the string and can also improve performance whenever the value returned by a function was used as parameter, as before it had to run the function twice in almost every case (once for strlen(), once for sprintf()).
Diffstat (limited to 'src/xine-engine/osd.c')
-rw-r--r--src/xine-engine/osd.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/xine-engine/osd.c b/src/xine-engine/osd.c
index 5de0de2cb..ac3c2bb92 100644
--- a/src/xine-engine/osd.c
+++ b/src/xine-engine/osd.c
@@ -1410,7 +1410,6 @@ static void osd_preload_fonts (osd_renderer_t *this, char *path) {
if( p ) {
osd_font_t *font;
- char *pathname;
*p++ = '\0';
font = calloc(1, sizeof(osd_font_t) );
@@ -1421,9 +1420,7 @@ static void osd_preload_fonts (osd_renderer_t *this, char *path) {
lprintf("font '%s' size %d is preloaded\n",
font->name, font->size);
- pathname = malloc(strlen(path) + strlen(entry->d_name) + 2);
- sprintf (pathname, "%s/%s", path, entry->d_name);
- font->filename = pathname;
+ asprintf (&font->filename, "%s/%s", path, entry->d_name);
font->next = this->fonts;
this->fonts = font;