Commit 83b4e836 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

Replace libvlc_exception_get_message with libvlc_errmsg

(This is a bit hackish as the conversion is not completed)
parent e996cbef
......@@ -166,7 +166,7 @@ int main( int i_argc, const char *ppsz_argv[] )
}
i_ret = libvlc_exception_raised (&ex);
if( i_ret )
fprintf( stderr, "%s\n", libvlc_exception_get_message( &ex));
fprintf( stderr, "%s\n", libvlc_errmsg() );
libvlc_exception_clear (&ex);
libvlc_exception_clear (&dummy);
......
......@@ -106,16 +106,6 @@ libvlc_exception_raise( libvlc_exception_t *p_exception,
*/
VLC_PUBLIC_API void libvlc_exception_clear( libvlc_exception_t * );
/**
* Get an exception's message.
*
* \param p_exception the exception to query
* \return the exception message or NULL if not applicable (exception not
* raised, for example)
*/
VLC_PUBLIC_API const char *
libvlc_exception_get_message( const libvlc_exception_t *p_exception );
/**@} */
/*****************************************************************************
......
......@@ -51,7 +51,6 @@ typedef struct libvlc_instance_t libvlc_instance_t;
typedef struct libvlc_exception_t
{
int b_raised;
char *psz_message;
} libvlc_exception_t;
/**@} */
......
......@@ -105,8 +105,7 @@ private:
{
if( ! libvlc_exception_raised(ex) )
return NOERROR;
_p_instance->setErrorInfo(IID_IVLCControl,
libvlc_exception_get_message(ex));
_p_instance->setErrorInfo(IID_IVLCControl, libvlc_errmsg());
libvlc_exception_clear(ex);
return E_FAIL;
}
......
......@@ -38,7 +38,7 @@ HRESULT _exception_bridge(VLCPlugin *p,REFIID riid, libvlc_exception_t *ex)
{
if( libvlc_exception_raised(ex) )
{
p->setErrorInfo(riid,libvlc_exception_get_message(ex));
p->setErrorInfo(riid,libvlc_errmsg());
libvlc_exception_clear(ex);
return E_FAIL;
}
......
......@@ -42,7 +42,7 @@ void __catch_exception( void * e, const char * function, const char * file, int
NSException* libvlcException = [NSException
exceptionWithName:@"LibVLCException"
reason:[NSString stringWithFormat:@"libvlc has thrown us an error: %s (%s:%d %s)",
libvlc_exception_get_message( ex ), file, line_number, function]
libvlc_errmsg(), file, line_number, function]
userInfo:nil];
libvlc_exception_clear( ex );
@throw libvlcException;
......
......@@ -42,7 +42,7 @@
#define RETURN_ON_EXCEPTION(this,ex) \
do { if( libvlc_exception_raised(&ex) ) \
{ \
NPN_SetException(this, libvlc_exception_get_message(&ex)); \
NPN_SetException(this, libvlc_errmsg()); \
libvlc_exception_clear(&ex); \
return INVOKERESULT_GENERIC_ERROR; \
} } while(false)
......@@ -448,7 +448,7 @@ LibvlcInputNPObject::getProperty(int index, NPVariant &result)
{
if( index != ID_input_state )
{
NPN_SetException(this, libvlc_exception_get_message(&ex));
NPN_SetException(this, libvlc_errmsg());
libvlc_exception_clear(&ex);
return INVOKERESULT_GENERIC_ERROR;
}
......
......@@ -39,17 +39,14 @@ static const char nomemstr[] = "Insufficient memory";
void libvlc_exception_init( libvlc_exception_t *p_exception )
{
p_exception->b_raised = 0;
p_exception->psz_message = NULL;
}
void libvlc_exception_clear( libvlc_exception_t *p_exception )
{
if( NULL == p_exception )
return;
if( p_exception->psz_message != nomemstr )
free( p_exception->psz_message );
p_exception->psz_message = NULL;
p_exception->b_raised = 0;
libvlc_clearerr ();
}
int libvlc_exception_raised( const libvlc_exception_t *p_exception )
......@@ -57,16 +54,6 @@ int libvlc_exception_raised( const libvlc_exception_t *p_exception )
return (NULL != p_exception) && p_exception->b_raised;
}
const char *
libvlc_exception_get_message( const libvlc_exception_t *p_exception )
{
if( p_exception->b_raised == 1 && p_exception->psz_message )
{
return p_exception->psz_message;
}
return NULL;
}
static void libvlc_exception_not_handled( const char *psz )
{
fprintf( stderr, "*** LibVLC Exception not handled: %s\nSet a breakpoint in '%s' to debug.\n",
......@@ -78,31 +65,27 @@ void libvlc_exception_raise( libvlc_exception_t *p_exception,
const char *psz_format, ... )
{
va_list args;
char * psz;
/* Make sure that there is no unnoticed previous exception */
if( p_exception && p_exception->b_raised )
{
libvlc_exception_not_handled( libvlc_errmsg() );
libvlc_exception_clear( p_exception );
}
/* Unformat-ize the message */
va_start( args, psz_format );
if( vasprintf( &psz, psz_format, args ) == -1)
psz = (char *)nomemstr;
libvlc_vprinterr( psz_format, args );
va_end( args );
/* Does caller care about exceptions ? */
if( p_exception == NULL ) {
/* Print something, so that lazy third-parties can easily
* notice that something may have gone unnoticedly wrong */
libvlc_exception_not_handled( psz );
if( psz != nomemstr )
free( psz );
libvlc_exception_not_handled( libvlc_errmsg() );
return;
}
/* Make sure that there is no unnoticed previous exception */
if( p_exception->b_raised )
{
libvlc_exception_not_handled( p_exception->psz_message );
libvlc_exception_clear( p_exception );
}
p_exception->psz_message = psz;
p_exception->b_raised = 1;
}
......
......@@ -349,8 +349,7 @@ mediacontrol_get_stream_information( mediacontrol_Instance *self,
if( libvlc_exception_raised( &ex ) )
{
free( retval );
RAISE( mediacontrol_InternalException,
libvlc_exception_get_message( &ex ) );
RAISE( mediacontrol_InternalException, libvlc_errmsg( ) );
libvlc_exception_clear( &ex );
return NULL;
}
......@@ -371,8 +370,7 @@ mediacontrol_get_stream_information( mediacontrol_Instance *self,
if( libvlc_exception_raised( &ex ) )
{
free( retval );
RAISE( mediacontrol_InternalException,
libvlc_exception_get_message( &ex ) );
RAISE( mediacontrol_InternalException, libvlc_errmsg() );
libvlc_exception_clear( &ex );
return NULL;
}
......
......@@ -61,17 +61,17 @@ mediacontrol_RGBPicture *private_mediacontrol_createRGBPicture( int, int, long,
#define RAISE_VOID( c, m ) do{ RAISE( c, m ); return; } while(0)
#define HANDLE_LIBVLC_EXCEPTION_VOID( e ) if( libvlc_exception_raised( e ) ) { \
RAISE( mediacontrol_InternalException, libvlc_exception_get_message( e )); \
RAISE( mediacontrol_InternalException, libvlc_errmsg()); \
libvlc_exception_clear( e ); \
return; }
#define HANDLE_LIBVLC_EXCEPTION_NULL( e ) if( libvlc_exception_raised( e ) ) { \
RAISE( mediacontrol_InternalException, libvlc_exception_get_message( e )); \
RAISE( mediacontrol_InternalException, libvlc_errmsg()); \
libvlc_exception_clear( e ); \
return NULL; }
#define HANDLE_LIBVLC_EXCEPTION_ZERO( e ) if( libvlc_exception_raised( e ) ) { \
RAISE( mediacontrol_InternalException, libvlc_exception_get_message( e )); \
RAISE( mediacontrol_InternalException, libvlc_errmsg()); \
libvlc_exception_clear( e ); \
return 0; }
......
......@@ -31,7 +31,6 @@ libvlc_event_manager_release
libvlc_event_send
libvlc_event_type_name
libvlc_exception_clear
libvlc_exception_get_message
libvlc_exception_init
libvlc_exception_raise
libvlc_exception_raised
......
......@@ -88,12 +88,9 @@ static inline void catch (void)
{
if (libvlc_exception_raised (&ex))
{
fprintf (stderr, "Exception: %s\n",
libvlc_exception_get_message (&ex));
fprintf (stderr, "Exception: %s\n", libvlc_errmsg ());
abort ();
}
assert (libvlc_exception_get_message (&ex) == NULL);
libvlc_exception_clear (&ex);
}
......
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