Commit b56716cf authored by Damien Fouilleul's avatar Damien Fouilleul

smb.c: prevents problem with glibc defining open as a macro

parent e316387a
...@@ -226,7 +226,7 @@ static int Open( vlc_object_t *p_this ) ...@@ -226,7 +226,7 @@ static int Open( vlc_object_t *p_this )
return VLC_EGENERIC; return VLC_EGENERIC;
} }
if( !(p_file = p_smb->open( p_smb, psz_uri, O_RDONLY, 0 )) ) if( !(p_file = (p_smb->open)( p_smb, psz_uri, O_RDONLY, 0 )) )
{ {
msg_Err( p_access, "open failed for '%s' (%s)", msg_Err( p_access, "open failed for '%s' (%s)",
p_access->psz_path, strerror(errno) ); p_access->psz_path, strerror(errno) );
...@@ -251,6 +251,14 @@ static int Open( vlc_object_t *p_this ) ...@@ -251,6 +251,14 @@ static int Open( vlc_object_t *p_this )
} }
#endif #endif
/*
** some version of glibc defines open as a macro, causing havoc
** with other macros using 'open' under the hood, such as the
** following one:
*/
#if defined(smbc_open) && defined(open)
# undef open
#endif
if( (i_smb = smbc_open( psz_uri, O_RDONLY, 0 )) < 0 ) if( (i_smb = smbc_open( psz_uri, O_RDONLY, 0 )) < 0 )
{ {
msg_Err( p_access, "open failed for '%s' (%s)", msg_Err( p_access, "open failed for '%s' (%s)",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment