diff -x CVS -x wntmsci3 -x wntmsci7 -x wntmsci8 -urN ooo_DEV300_m14_src.orig/vcl/unx/source/gdi/salprnpsp.cxx ooo_DEV300_m14_src.vcl89/vcl/unx/source/gdi/salprnpsp.cxx --- ooo_DEV300_m14_src.orig/vcl/unx/source/gdi/salprnpsp.cxx 2008-04-11 11:55:56.000000000 +0200 +++ ooo_DEV300_m14_src.vcl89/vcl/unx/source/gdi/salprnpsp.cxx 2008-05-16 15:01:37.000000000 +0200 @@ -103,56 +103,20 @@ { if( ! driverLib ) { - #ifdef MACOSX - // Use OSL module loading for MacOS X - OUString printerDriverLibName( RTL_CONSTASCII_USTRINGPARAM(_XSALSET_LIBNAME) ); - oslModule pPrinterDriverLib = osl_loadModule( printerDriverLibName.pData, SAL_LOADMODULE_DEFAULT ); - if( !pPrinterDriverLib ) - { - fprintf( stderr, "salprnpsp.cxx: Cannot load printer setup library %s.\n", (char *) printerDriverLibName.pData); - return; - } - - // Get the address of Sal_SetupPrinterDriver - OUString setupPrinterDriverFuncName( RTL_CONSTASCII_USTRINGPARAM("Sal_SetupPrinterDriver") ); - void *pSetupPrinterDriverFunc; - pSetupPrinterDriverFunc = osl_getSymbol( pPrinterDriverLib, setupPrinterDriverFuncName.pData ); - if( !pSetupPrinterDriverFunc ) - { - fprintf( stderr, "salprnpsp.cxx: Cannot get address of symbol 'Sal_SetupPrinterDriver'.\n" ); - return; - } - pSetupFunction = (int(*)(PrinterInfo&))pSetupPrinterDriverFunc; - - // Get the address of Sal_queryFaxNumber - OUString queryFaxNumFuncName( RTL_CONSTASCII_USTRINGPARAM("Sal_queryFaxNumber") ); - void *pQueryFaxNumFunc; - pQueryFaxNumFunc = osl_getSymbol( pPrinterDriverLib, queryFaxNumFuncName.pData ); - if( !pQueryFaxNumFunc ) - { - fprintf( stderr, "salprnpsp.cxx: Cannot get address of symbol 'Sal_queryFaxNumber'.\n" ); - return; - } - pFaxNrFunction = (int(*)(String&))pQueryFaxNumFunc; - - #else - OUString aLibName( RTL_CONSTASCII_USTRINGPARAM( _XSALSET_LIBNAME ) ); - driverLib = osl_loadModule( aLibName.pData, SAL_LOADMODULE_DEFAULT ); - if ( !driverLib ) - { - return; - } - - OUString aSetupSym( RTL_CONSTASCII_USTRINGPARAM( "Sal_SetupPrinterDriver" ) ); - pSetupFunction = (setupFunction)osl_getFunctionSymbol( driverLib, aSetupSym.pData ); - if ( !pSetupFunction ) - fprintf( stderr, "could not resolve Sal_SetupPrinterDriver\n" ); - - OUString aFaxSym( RTL_CONSTASCII_USTRINGPARAM( "Sal_queryFaxNumber" ) ); - pFaxNrFunction = (faxFunction)osl_getFunctionSymbol( driverLib, aFaxSym.pData ); - if ( !pFaxNrFunction ) - fprintf( stderr, "could not resolve Sal_queryFaxNumber\n" ); - #endif + OUString aLibName( RTL_CONSTASCII_USTRINGPARAM( _XSALSET_LIBNAME ) ); + driverLib = osl_loadModuleRelative( (oslGenericFunction)getPaLib, aLibName.pData, SAL_LOADMODULE_DEFAULT ); + if ( !driverLib ) + { + return; + } + + pSetupFunction = (setupFunction)osl_getAsciiFunctionSymbol( driverLib, "Sal_SetupPrinterDriver" ); + if ( !pSetupFunction ) + fprintf( stderr, "could not resolve Sal_SetupPrinterDriver\n" ); + + pFaxNrFunction = (faxFunction)osl_getAsciiFunctionSymbol( driverLib, "Sal_queryFaxNumber" ); + if ( !pFaxNrFunction ) + fprintf( stderr, "could not resolve Sal_queryFaxNumber\n" ); } }