On Thu, 2 Jun 2005, Pouech Eric DMI AEI CAEN wrote:

returning a pointer to something on the stack is something I call an error
(how do you ensure that the buffer will not get overwritten by another function 
call ?)

It's not returning a pointer to something on the stack. It is returning driversFound[0] which is a pointer to a string which may have been malloc()'ed (you stripped that part of the code).

char *audioAutoDetect(void)
{
[snip]
char *driversFound[10];
[snip]

maybe driversFound[0]=malloc(something);

return driversFound[0];
[snip]
}

--
Francois Gouget         [EMAIL PROTECTED]        http://fgouget.free.fr/
        It really galls me that most of the computer power in the world
                          is wasted on screen savers.
                     Chris Caldwell from the GIMPS project
                       http://www.mersenne.org/prime.htm

Reply via email to