# HG changeset patch # User arpi # Date 1041083215 0 # Node ID 41a1e5dbb5526ba32c5270a0a45915f81ccef92c # Parent 30bef3c97b8b31fa736e24ed70047a0d70418176 This patch fixes the reading of the menu.conf, because stream_open() isn't a good idea, it messes with dvd playback. Andreas Hess diff -r 30bef3c97b8b -r 41a1e5dbb552 libmenu/menu.c --- a/libmenu/menu.c Sat Dec 28 13:45:04 2002 +0000 +++ b/libmenu/menu.c Sat Dec 28 13:46:55 2002 +0000 @@ -4,6 +4,8 @@ #include #include #include +#include +#include #include "../libvo/osd.h" #include "../libvo/font_load.h" @@ -115,8 +117,8 @@ char* buffer = NULL; int bl = BUF_STEP, br = 0; int f; - stream_t* stream = open_stream(cfg_file,0,&f); - if(!stream) { + int fd = open(cfg_file, O_RDONLY); + if(fd < 0) { printf("Can't open menu config file: %s\n",cfg_file); return 0; } @@ -126,14 +128,14 @@ if(bl - br < BUF_MIN) { if(bl >= BUF_MAX) { printf("Menu config file is too big (> %d KB)\n",BUF_MAX/1024); - free_stream(stream); + close(fd); free(buffer); return 0; } bl += BUF_STEP; buffer = realloc(buffer,bl); } - r = stream_read(stream,buffer+br,bl-br); + r = read(fd,buffer+br,bl-br); if(r == 0) break; br += r; } @@ -143,6 +145,8 @@ } buffer[br-1] = '\0'; + close(fd); + f = menu_parse_config(buffer); free(buffer); return f;