User: rt      
Date: 2008-01-30 07:53:43+0000
Modified:
   dba/connectivity/source/drivers/hsqldb/HStorageMap.cxx

Log:
 INTEGRATION: CWS dba24d (1.11.152); FILE MERGED
 2007/11/27 07:32:30 oj 1.11.152.1: #i51355# check if stream exists when 
read-only

File Changes:

Directory: /dba/connectivity/source/drivers/hsqldb/
===================================================

File [changed]: HStorageMap.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/connectivity/source/drivers/hsqldb/HStorageMap.cxx?r1=1.11&r2=1.12
Delta lines:  +15 -3
--------------------
--- HStorageMap.cxx     2006-09-17 02:40:55+0000        1.11
+++ HStorageMap.cxx     2008-01-30 07:53:40+0000        1.12
@@ -300,14 +300,26 @@
                                                {
                             try
                                                    {
-/*                                                             if ( _nMode == 
ElementModes::READ )
-                                                                       _nMode 
|= ElementModes::SEEKABLE;
-*/
                                                            pHelper.reset(new 
StreamHelper(aStoragePair.first.first->openStreamElement(sName,_nMode)));
                             }
                             catch(Exception& )
                                                    {
                                 ::rtl::OUString sStrippedName = 
removeOldURLPrefix(sOrgName);
+
+                                if ( ((_nMode & ElementModes::WRITE) != 
ElementModes::WRITE ) )
+                                {
+                                    sal_Bool bIsStream = sal_True;
+                                    try
+                                    {
+                                       bIsStream = 
aStoragePair.first.first->isStreamElement(sStrippedName);
+                                    }
+                                    catch(Exception& )
+                                                           {
+                                        bIsStream = sal_False;
+                                    }
+                                    if ( !bIsStream )
+                                                                           
return pHelper; // readonly file without data stream
+                                }
                                 pHelper.reset( new 
StreamHelper(aStoragePair.first.first->openStreamElement( sStrippedName, _nMode 
) ) );
                             }
                                                        
aFind->second.second.insert(TStreamMap::value_type(sName,pHelper));




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to