diff options
author | Philipp Lohmann <pl@openoffice.org> | 2001-08-07 12:19:04 +0000 |
---|---|---|
committer | Philipp Lohmann <pl@openoffice.org> | 2001-08-07 12:19:04 +0000 |
commit | 967680054804f0c7c8a2b662adea53bed3943ae7 (patch) | |
tree | 0056a209dd9426d3f6f32efdc1b234f9b31fbabe | |
parent | 23278766e252ea975832a38605d7b830d485b986 (diff) |
#90497# String does not check for NULL pointer anymore, corrected a pointer cast
-rw-r--r-- | extensions/source/scanner/sane.hxx | 21 | ||||
-rw-r--r-- | extensions/source/scanner/sanedlg.cxx | 36 | ||||
-rw-r--r-- | extensions/source/scanner/scanunx.cxx | 59 |
3 files changed, 81 insertions, 35 deletions
diff --git a/extensions/source/scanner/sane.hxx b/extensions/source/scanner/sane.hxx index 12a6d52554ca..3833d96fb744 100644 --- a/extensions/source/scanner/sane.hxx +++ b/extensions/source/scanner/sane.hxx @@ -2,9 +2,9 @@ * * $RCSfile: sane.hxx,v $ * - * $Revision: 1.1.1.1 $ + * $Revision: 1.2 $ * - * last change: $Author: hr $ $Date: 2000-09-18 16:16:52 $ + * last change: $Author: pl $ $Date: 2001-08-07 13:19:04 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -61,6 +61,7 @@ #ifndef _SANE_HXX #define _SANE_HXX +#include <osl/thread.h> #include <tools/string.hxx> #include <vcl/bitmap.hxx> #include <sane/sane.h> @@ -77,8 +78,8 @@ class BitmapTransporter : public OWeakObject, AWT::XBitmap public: - BitmapTransporter() {} - virtual ~BitmapTransporter() {} + BitmapTransporter(); + virtual ~BitmapTransporter(); // XInterface @@ -159,18 +160,18 @@ public: static int CountDevices() { return nDevices; } static String GetName( int n ) - { return String( ppDevices[n]->name, gsl_getSystemTextEncoding() ); } + { return String( ppDevices[n]->name ? ppDevices[n]->name : "", osl_getThreadTextEncoding() ); } static String GetVendor( int n ) - { return String( ppDevices[n]->vendor, gsl_getSystemTextEncoding() ); } + { return String( ppDevices[n]->vendor ? ppDevices[n]->vendor : "", osl_getThreadTextEncoding() ); } static String GetModel( int n ) - { return String( ppDevices[n]->model, gsl_getSystemTextEncoding() ); } + { return String( ppDevices[n]->model ? ppDevices[n]->model : "", osl_getThreadTextEncoding() ); } static String GetType( int n ) - { return String( ppDevices[n]->type, gsl_getSystemTextEncoding() ); } + { return String( ppDevices[n]->type ? ppDevices[n]->type : "", osl_getThreadTextEncoding() ); } String GetOptionName( int n ) - { return String( (char*)mppOptions[n]->name, gsl_getSystemTextEncoding() ); } + { return String( mppOptions[n]->name ? (char*)mppOptions[n]->name : "", osl_getThreadTextEncoding() ); } String GetOptionTitle( int n ) - { return String( (char*)mppOptions[n]->title, gsl_getSystemTextEncoding() ); } + { return String( mppOptions[n]->title ? (char*)mppOptions[n]->title : "", osl_getThreadTextEncoding() ); } SANE_Value_Type GetOptionType( int n ) { return mppOptions[n]->type; } SANE_Unit GetOptionUnit( int n ) diff --git a/extensions/source/scanner/sanedlg.cxx b/extensions/source/scanner/sanedlg.cxx index 71199cf2506a..acabd673f209 100644 --- a/extensions/source/scanner/sanedlg.cxx +++ b/extensions/source/scanner/sanedlg.cxx @@ -2,9 +2,9 @@ * * $RCSfile: sanedlg.cxx,v $ * - * $Revision: 1.1.1.1 $ + * $Revision: 1.2 $ * - * last change: $Author: hr $ $Date: 2000-09-18 16:16:52 $ + * last change: $Author: pl $ $Date: 2001-08-07 13:19:04 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -463,7 +463,7 @@ IMPL_LINK( SaneDlg, SelectHdl, ListBox*, pListBox ) { if( pListBox == &maQuantumRangeBox ) { - ByteString aValue( maQuantumRangeBox.GetSelectEntry(), gsl_getSystemTextEncoding() ); + ByteString aValue( maQuantumRangeBox.GetSelectEntry(), osl_getThreadTextEncoding() ); double fValue = atof( aValue.GetBuffer() ); mrSane.SetOptionValue( mnCurrentOption, fValue, mnCurrentElement ); } @@ -481,7 +481,7 @@ IMPL_LINK( SaneDlg, OptionsBoxSelectHdl, SvTreeListBox*, pBox ) { String aOption = maOptionBox.GetEntryText( maOptionBox.FirstSelected() ); - int nOption = mrSane.GetOptionByName( ByteString( aOption, gsl_getSystemTextEncoding() ).GetBuffer() ); + int nOption = mrSane.GetOptionByName( ByteString( aOption, osl_getThreadTextEncoding() ).GetBuffer() ); if( nOption != -1 && nOption != mnCurrentOption ) { DisableOption(); @@ -595,7 +595,7 @@ IMPL_LINK( SaneDlg, ModifyHdl, Edit*, pEdit ) { double fValue; char pBuf[256]; - ByteString aContents( maNumericEdit.GetText(), gsl_getSystemTextEncoding() ); + ByteString aContents( maNumericEdit.GetText(), osl_getThreadTextEncoding() ); fValue = atof( aContents.GetBuffer() ); if( mfMin != mfMax && ( fValue < mfMin || fValue > mfMax ) ) { @@ -604,7 +604,7 @@ IMPL_LINK( SaneDlg, ModifyHdl, Edit*, pEdit ) else if( fValue > mfMax ) fValue = mfMax; sprintf( pBuf, "%g", fValue ); - maNumericEdit.SetText( String( pBuf, gsl_getSystemTextEncoding() ) ); + maNumericEdit.SetText( String( pBuf, osl_getThreadTextEncoding() ) ); } mrSane.SetOptionValue( mnCurrentOption, fValue, mnCurrentElement ); } @@ -615,7 +615,7 @@ IMPL_LINK( SaneDlg, ModifyHdl, Edit*, pEdit ) double fValue; mrSane.GetOptionValue( mnCurrentOption, fValue, mnCurrentElement ); sprintf( pBuf, "%g", fValue ); - String aValue( pBuf, gsl_getSystemTextEncoding() ); + String aValue( pBuf, osl_getThreadTextEncoding() ); maNumericEdit.SetText( aValue ); maQuantumRangeBox.SelectEntry( aValue ); } @@ -765,7 +765,7 @@ void SaneDlg::EstablishStringOption() { maOptionDescTxt.SetText( mrSane.GetOptionName( mnCurrentOption ) ); maOptionDescTxt.Show( TRUE ); - maStringEdit.SetText( String( aValue, gsl_getSystemTextEncoding() ) ); + maStringEdit.SetText( String( aValue, osl_getThreadTextEncoding() ) ); maStringEdit.Show( TRUE ); } } @@ -775,10 +775,10 @@ void SaneDlg::EstablishStringRange() const char** ppStrings = mrSane.GetStringConstraint( mnCurrentOption ); maStringRangeBox.Clear(); for( int i = 0; ppStrings[i] != 0; i++ ) - maStringRangeBox.InsertEntry( String( ppStrings[i], gsl_getSystemTextEncoding() ) ); + maStringRangeBox.InsertEntry( String( ppStrings[i], osl_getThreadTextEncoding() ) ); ByteString aValue; mrSane.GetOptionValue( mnCurrentOption, aValue ); - maStringRangeBox.SelectEntry( String( aValue, gsl_getSystemTextEncoding() ) ); + maStringRangeBox.SelectEntry( String( aValue, osl_getThreadTextEncoding() ) ); maStringRangeBox.Show( TRUE ); maOptionDescTxt.SetText( mrSane.GetOptionName( mnCurrentOption ) ); maOptionDescTxt.Show( TRUE ); @@ -809,13 +809,13 @@ void SaneDlg::EstablishQuantumRange() for( int i = 0; i < nValues; i++ ) { sprintf( pBuf, "%g", mpRange[ i ] ); - maQuantumRangeBox.InsertEntry( String( pBuf, gsl_getSystemTextEncoding() ) ); + maQuantumRangeBox.InsertEntry( String( pBuf, osl_getThreadTextEncoding() ) ); } double fValue; if( mrSane.GetOptionValue( mnCurrentOption, fValue, mnCurrentElement ) ) { sprintf( pBuf, "%g", fValue ); - maQuantumRangeBox.SelectEntry( String( pBuf, gsl_getSystemTextEncoding() ) ); + maQuantumRangeBox.SelectEntry( String( pBuf, osl_getThreadTextEncoding() ) ); } maQuantumRangeBox.Show( TRUE ); String aText( mrSane.GetOptionName( mnCurrentOption ) ); @@ -842,12 +842,12 @@ void SaneDlg::EstablishNumericOption() if( mfMin != mfMax ) { sprintf( pBuf, " < %g ; %g >", mfMin, mfMax ); - aText += String( pBuf, gsl_getSystemTextEncoding() ); + aText += String( pBuf, osl_getThreadTextEncoding() ); } maOptionDescTxt.SetText( aText ); maOptionDescTxt.Show( TRUE ); sprintf( pBuf, "%g", fValue ); - maNumericEdit.SetText( String( pBuf, gsl_getSystemTextEncoding() ) ); + maNumericEdit.SetText( String( pBuf, osl_getThreadTextEncoding() ) ); maNumericEdit.Show( TRUE ); } @@ -1110,7 +1110,7 @@ BOOL SaneDlg::LoadState() return FALSE; const char* pEnv = getenv("HOME"); - String aFileName( pEnv ? pEnv : "", gsl_getSystemTextEncoding() ); + String aFileName( pEnv ? pEnv : "", osl_getThreadTextEncoding() ); aFileName += String( RTL_CONSTASCII_USTRINGPARAM( "/.so_sane_state" ) ); Config aConfig( aFileName ); if( ! aConfig.HasGroup( "SANE" ) ) @@ -1118,7 +1118,7 @@ BOOL SaneDlg::LoadState() aConfig.SetGroup( "SANE" ); ByteString aString = aConfig.ReadKey( "SO_LastSaneDevice" ); - for( i = 0; i < Sane::CountDevices() && ! aString.Equals( ByteString( Sane::GetName( i ), gsl_getSystemTextEncoding() ) ); i++ ) ; + for( i = 0; i < Sane::CountDevices() && ! aString.Equals( ByteString( Sane::GetName( i ), osl_getThreadTextEncoding() ) ); i++ ) ; if( i == Sane::CountDevices() ) return FALSE; @@ -1147,7 +1147,7 @@ BOOL SaneDlg::LoadState() else if( aValue.CompareTo( "STRING=", 7 ) == COMPARE_EQUAL ) { aValue.Erase( 0, 7 ); - mrSane.SetOptionValue( nOption, String( aValue, gsl_getSystemTextEncoding() ) ); + mrSane.SetOptionValue( nOption, String( aValue, osl_getThreadTextEncoding() ) ); } else if( aValue.CompareTo( "NUMERIC=", 8 ) == COMPARE_EQUAL ) { @@ -1181,7 +1181,7 @@ void SaneDlg::SaveState() return; const char* pEnv = getenv( "HOME" ); - String aFileName( pEnv ? pEnv : "", gsl_getSystemTextEncoding() ); + String aFileName( pEnv ? pEnv : "", osl_getThreadTextEncoding() ); aFileName.AppendAscii( "/.so_sane_state" ); Config aConfig( aFileName ); diff --git a/extensions/source/scanner/scanunx.cxx b/extensions/source/scanner/scanunx.cxx index 383c9ee202d0..16a28a2327f9 100644 --- a/extensions/source/scanner/scanunx.cxx +++ b/extensions/source/scanner/scanunx.cxx @@ -2,9 +2,9 @@ * * $RCSfile: scanunx.cxx,v $ * - * $Revision: 1.1.1.1 $ + * $Revision: 1.2 $ * - * last change: $Author: hr $ $Date: 2000-09-18 16:16:52 $ + * last change: $Author: pl $ $Date: 2001-08-07 13:19:04 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -63,6 +63,24 @@ #include <vos/thread.hxx> #include <tools/list.hxx> +#ifdef DEBUG +#include <stdio.h> +#endif + +BitmapTransporter::BitmapTransporter() +{ +#ifdef DEBUG + fprintf( stderr, "BitmapTransporter\n" ); +#endif +} + +BitmapTransporter::~BitmapTransporter() +{ +#ifdef DEBUG + fprintf( stderr, "~BitmapTransporter\n" ); +#endif +} + // ----------------------------------------------------------------------------- ANY SAL_CALL BitmapTransporter::queryInterface( const Type& rType ) throw( RuntimeException ) @@ -142,22 +160,41 @@ class ScannerThread : public vos::OThread REF( com::sun::star::lang::XEventListener ) m_xListener; ScannerManager* m_pManager; // just for the disposing call +public: virtual void run(); virtual void onTerminated() { delete this; } public: ScannerThread( SaneHolder* pHolder, const REF( com::sun::star::lang::XEventListener )& listener, - ScannerManager* pManager ) - : m_pHolder( pHolder ), m_xListener( listener ), m_pManager( pManager ) {} - virtual ~ScannerThread() {} + ScannerManager* pManager ); + virtual ~ScannerThread(); }; // ----------------------------------------------------------------------------- +ScannerThread::ScannerThread( + SaneHolder* pHolder, + const REF( com::sun::star::lang::XEventListener )& listener, + ScannerManager* pManager ) + : m_pHolder( pHolder ), m_xListener( listener ), m_pManager( pManager ) +{ +#ifdef DEBUG + fprintf( stderr, "ScannerThread\n" ); +#endif +} + +ScannerThread::~ScannerThread() +{ +#ifdef DEBUG + fprintf( stderr, "~ScannerThread\n" ); +#endif +} + void ScannerThread::run() { vos::OGuard aGuard( m_pHolder->m_aProtector ); - REF( XInterface ) aIf( static_cast< OWeakObject* >( new BitmapTransporter ) ); + BitmapTransporter* pTransporter = new BitmapTransporter; + REF( XInterface ) aIf( static_cast< OWeakObject* >( pTransporter ) ); m_pHolder->m_xBitmap = REF( AWT::XBitmap )( aIf, UNO_QUERY ); @@ -168,7 +205,7 @@ void ScannerThread::run() m_pHolder->m_aSane.SetOptionValue( nOption, (BOOL)FALSE ); m_pHolder->m_nError = - m_pHolder->m_aSane.Start( *(BitmapTransporter*)&m_pHolder->m_xBitmap ) ? + m_pHolder->m_aSane.Start( *pTransporter ) ? ScanError_ScanErrorNone : ScanError_ScanCanceled; } else @@ -235,6 +272,10 @@ BOOL ScannerManager::configureScanner( ScannerContext& scanner_context ) throw( { vos::OGuard aGuard( aSaneProtector ); +#ifdef DEBUG + fprintf( stderr, "ScannerManager::configureScanner\n" ); +#endif + if( scanner_context.InternalData < 0 || scanner_context.InternalData >= allSanes.Count() ) throw ScannerException( ::rtl::OUString::createFromAscii( "Scanner does not exist" ), @@ -252,6 +293,10 @@ void ScannerManager::startScan( const ScannerContext& scanner_context, { vos::OGuard aGuard( aSaneProtector ); +#ifdef DEBUG + fprintf( stderr, "ScannerManager::startScan\n" ); +#endif + if( scanner_context.InternalData < 0 || scanner_context.InternalData >= allSanes.Count() ) throw ScannerException( ::rtl::OUString::createFromAscii( "Scanner does not exist" ), |