Merge.
--- a/genericopenlibs/cppstdlib/stl/stlport/stl/_ios.c Mon Mar 22 12:57:04 2010 -0700
+++ b/genericopenlibs/cppstdlib/stl/stlport/stl/_ios.c Mon Mar 29 12:27:51 2010 +0100
@@ -110,7 +110,17 @@
this->imbue(locale());
this->tie(0);
this->_M_set_exception_mask(ios_base::goodbit);
- this->_M_clear_nothrow(__sb != 0 ? ios_base::goodbit : ios_base::badbit);
+ /*
+ this->_M_clear_nothrow(__sb != 0 ? ios_base::goodbit : ios_base::badbit);
+
+ The ternary expression above, throws an undefined reference link error (for goodbit and badbit)
+ when compiled with GCCE 4.3.2. Replacing ternary statement with an if-else block fixes this.
+ */
+ if(__sb != 0) {
+ this->_M_clear_nothrow(ios_base::goodbit);
+ } else {
+ this->_M_clear_nothrow(ios_base::badbit);
+ }
ios_base::flags(ios_base::skipws | ios_base::dec);
ios_base::width(0);
ios_base::precision(6);
--- a/genericopenlibs/openenvcore/backend/group/backend.mmp Mon Mar 22 12:57:04 2010 -0700
+++ b/genericopenlibs/openenvcore/backend/group/backend.mmp Mon Mar 29 12:27:51 2010 +0100
@@ -39,6 +39,8 @@
USERINCLUDE ../ipcserver/ipccli/inc
USERINCLUDE ../ipcserver/ipcsrv/inc
+// Illegal dependancy on tz.h in MW layer. Needs fixing
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
OS_LAYER_SYSTEMINCLUDE_SYMBIAN
OS_LAYER_LIBC_SYSTEMINCLUDE
@@ -146,7 +148,7 @@
LIBRARY rpipe.lib
LIBRARY charconv.lib
LIBRARY estor.lib
-
+LIBRARY tzclient.lib
#ifdef WINSCW
//wsd solution
--- a/genericopenlibs/openenvcore/backend/inc/sysif.h Mon Mar 22 12:57:04 2010 -0700
+++ b/genericopenlibs/openenvcore/backend/inc/sysif.h Mon Mar 29 12:27:51 2010 +0100
@@ -35,6 +35,8 @@
#include <commdbconnpref.h>
#include <rpipe.h>
+#include<tz.h>
+
#ifdef SYMBIAN_OE_POSIX_SIGNALS
#include "signalclient.h"
#include "tsignalmessage.h"
@@ -112,7 +114,7 @@
*/
{
public:
- void StorePtrs(RHeap* aHeap, RFs* aFs, RSocketServ* aSs, RCommServ* aCs, RFastLock* aSsLock, RFastLock* aCsLock)
+ void StorePtrs(RHeap* aHeap, RFs* aFs, RSocketServ* aSs, RCommServ* aCs, RFastLock* aSsLock, RFastLock* aCsLock, RTz * aTzs)
{
iHeap = aHeap;
iFs = aFs;
@@ -120,6 +122,7 @@
iCs = aCs;
iSsLock = aSsLock;
iCsLock = aCsLock;
+ iTzS = aTzs;
}
~TCLSICleanup()
@@ -130,6 +133,7 @@
iCs->Close();
iCsLock->Close();
iHeap->Close();
+ iTzS->Close();
}
private:
RHeap* iHeap;
@@ -138,6 +142,7 @@
RCommServ* iCs;
RFastLock* iSsLock;
RFastLock* iCsLock;
+ RTz * iTzS;
};
@@ -651,7 +656,7 @@
// Default connection settings, set/cleared using setdefaultif
TConnPref* iDefConnPref;
-
+ RTz iTzServer;
#ifdef SYMBIAN_OE_POSIX_SIGNALS
// Signal handler thread
RThread iSignalHandlerThread;
@@ -803,6 +808,11 @@
#endif // SYMBIAN_OE_POSIX_SIGNALS
public:
+
+ inline RTz & TZServer()
+ {
+ return iTzServer;
+ }
//ipc server session
RIpcSession iIpcS;
friend class RFileDesTransferSession;
--- a/genericopenlibs/openenvcore/backend/src/corebackend/localif.cpp Mon Mar 22 12:57:04 2010 -0700
+++ b/genericopenlibs/openenvcore/backend/src/corebackend/localif.cpp Mon Mar 29 12:27:51 2010 +0100
@@ -165,13 +165,23 @@
err |= iDefConnLock.CreateLocal();
}
+ if(err == KErrNone)
+ {
+ err = iTzServer.Connect();
+ if(!err)
+ {
+ err = iTzServer.ShareAuto();
+ }
+ }
+
+
//Panic if any of the above operation returns with error
if (err)
{
User::Panic(KEstlibInit, err);
}
- iCleanup.StorePtrs(iPrivateHeap, &iFs, &iSs, &iCs, &iSSLock, &iCSLock);
+ iCleanup.StorePtrs(iPrivateHeap, &iFs, &iSs, &iCs, &iSSLock, &iCSLock, &iTzServer);
// No connection settings by default
iDefConnPref = NULL;
@@ -1600,13 +1610,13 @@
{
err=iFids.Attach(fd,newf);
if (!err)
- return fd;
- delete newf;
+ return fd;
+ newf->Close();
}
else if(newf != NULL)
{
//coverity[leave_without_push]
- delete newf;
+ newf->Close();
}
iFids.Attach(fd,0); // cancel the reservation
}
--- a/genericopenlibs/openenvcore/backend/src/corebackend/usocket.cpp Mon Mar 22 12:57:04 2010 -0700
+++ b/genericopenlibs/openenvcore/backend/src/corebackend/usocket.cpp Mon Mar 29 12:27:51 2010 +0100
@@ -1792,7 +1792,10 @@
ret = iSocket.Open(*iSockServPtr,iAddrFamily,iStyle,iProtocol);
}
}
- iSocketPtr = &iSocket;
+ if(KErrNone == ret)
+ {
+ iSocketPtr = &iSocket;
+ }
iConnectInProgress = EFalse;
return ret;
}
--- a/genericopenlibs/openenvcore/libc/src/timefuncs.cpp Mon Mar 22 12:57:04 2010 -0700
+++ b/genericopenlibs/openenvcore/libc/src/timefuncs.cpp Mon Mar 29 12:27:51 2010 +0100
@@ -162,7 +162,7 @@
aDate;
aReference;
#endif
-
+/* //This part has been commented out because of performance issue. Also this requires capability.
if(RProcess().HasCapability(ECapabilityReadUserData,ECapabilityWriteUserData,NULL))
{
// tm_zone updated only in this case. Otherwise always has UTC.
@@ -184,9 +184,12 @@
CnvUtfConverter::ConvertFromUnicodeToUtf8(ptr,zoneNameDesc);
CleanupStack::PopAndDestroy(timezone);
CleanupStack::PopAndDestroy(localizer);
- }
- aTmStruct->tm_zone = tzname[0];
- }
+ }
+
+ aTmStruct->tm_zone = tzname[0]; */
+
+ aTmStruct->tm_zone = "WILDABBR";
+ }
void ConvertUtcToLocalTimeL(const time_t* aUTCTime, struct tm* const atmStruct)
{
@@ -194,7 +197,6 @@
{
User::Leave(KErrArgument);
}
-
TTime time(KEpochTime + (*aUTCTime) * (TInt64)1000000);
TTime Utime(time);
@@ -216,14 +218,11 @@
return;
}
- RTz tzServer;
- User::LeaveIfError(tzServer.Connect());
- CleanupClosePushL(tzServer);
-
TDateTime tdt = time.DateTime();
//enable the cache
- CTzConverter* ctzConverter = CTzConverter::NewL(tzServer);
+ CTzConverter* ctzConverter = CTzConverter::NewL(Backend()->TZServer());
+
CleanupStack::PushL(ctzConverter);
if(ctzConverter->ConvertToLocalTime(time) == KErrNone)
{
@@ -244,10 +243,12 @@
CleanupStack::PushL(zoneid);
atmStruct->tm_isdst = -1;
- UpdateDstAndTznameL(tzServer, *zoneid, atmStruct, time, Utime, tdt, ETzWallTimeReference);
+ UpdateDstAndTznameL(Backend()->TZServer(), *zoneid, atmStruct, time, Utime, tdt, ETzWallTimeReference);
CleanupStack::PopAndDestroy(zoneid);
}
- CleanupStack::PopAndDestroy(2);
+
+
+ CleanupStack::PopAndDestroy(1);
cachetm = *atmStruct;
}
@@ -279,11 +280,8 @@
return;
}
- RTz tzServer;
- User::LeaveIfError(tzServer.Connect());
- CleanupClosePushL(tzServer);
- CTzConverter* ctzConverter = CTzConverter::NewL(tzServer);
+ CTzConverter* ctzConverter = CTzConverter::NewL(Backend()->TZServer());
CleanupStack::PushL(ctzConverter);
/* Following fields are updated if successful:
* tm_wday
@@ -307,17 +305,18 @@
CleanupStack::PushL(zoneid);
aTmStruct->tm_isdst = -1;
- UpdateDstAndTznameL(tzServer, *zoneid, aTmStruct, oldTime, time, tdt, ETzUtcTimeReference);
+ UpdateDstAndTznameL(Backend()->TZServer(), *zoneid, aTmStruct, oldTime, time, tdt, ETzUtcTimeReference);
CleanupStack::PopAndDestroy(zoneid);
}
cachetm = *aTmStruct;
- CleanupStack::PopAndDestroy(2);
+ CleanupStack::PopAndDestroy(1);
}
// converts a UTC time to local time, or, local time to UTC time.
TInt ConvertTime(const TInt atimeConverFlg, time_t *aUTCTime, struct tm *const atmStruct)
{
TInt err = 0;
+
CActiveScheduler* oldAs = CActiveScheduler::Current();
RHeap* oldHeap = User::SwitchHeap(Backend()->Heap());
CActiveScheduler* newAs = new CActiveScheduler();
@@ -335,9 +334,11 @@
{
CActiveScheduler::Install(newAs);
}
-
+
+ oldHeap = User::SwitchHeap(Backend()->Heap());
// Cleanup stack needed
CTrapCleanup* cleanup=CTrapCleanup::New();
+
if (cleanup)
{
if(EUtcToLocal == atimeConverFlg)
@@ -358,7 +359,8 @@
{
(void)CActiveScheduler::Replace(oldAs);
}
- oldHeap = User::SwitchHeap(Backend()->Heap());
+
+
delete newAs;
User::SwitchHeap(oldHeap);
return MapError(err,errno);
--- a/genericopenlibs/openenvcore/libpthread/group/libpthread.mmp Mon Mar 22 12:57:04 2010 -0700
+++ b/genericopenlibs/openenvcore/libpthread/group/libpthread.mmp Mon Mar 29 12:27:51 2010 +0100
@@ -52,6 +52,9 @@
USERINCLUDE ../../libc/inc
USERINCLUDE ../../backend/inc
USERINCLUDE ../../backend/ipcserver/ipccli/inc
+
+// Illegal dependancy on tz.h in MW layer. Needs fixing
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
OS_LAYER_SYSTEMINCLUDE_SYMBIAN
OS_LAYER_LIBC_SYSTEMINCLUDE
--- a/genericopenlibs/posixrealtimeextensions/group/librt.mmp Mon Mar 22 12:57:04 2010 -0700
+++ b/genericopenlibs/posixrealtimeextensions/group/librt.mmp Mon Mar 29 12:27:51 2010 +0100
@@ -33,6 +33,8 @@
USERINCLUDE ../../openenvcore/backend/ipcserver/ipccli/inc
USERINCLUDE ../inc/
+// Illegal dependancy on tz.h in MW layer. Needs fixing
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
OS_LAYER_SYSTEMINCLUDE_SYMBIAN
OS_LAYER_LIBC_SYSTEMINCLUDE
--- a/group/bld.inf Mon Mar 22 12:57:04 2010 -0700
+++ b/group/bld.inf Mon Mar 29 12:27:51 2010 +0100
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -16,6 +16,8 @@
*/
+#include "../rom/bld.inf"
+
#include "../ossrv_pub/group/bld.inf"
#include "../ossrv_plat/libutils/group/bld.inf"
@@ -28,40 +30,5 @@
#include "../utilitylibraries/libutils/group/bld.inf"
-
-PRJ_EXPORTS
-//Exporting glib iby file
-../rom/glib.iby CORE_OS_LAYER_IBY_EXPORT_PATH(glib.iby)
-
-//Exporting ssl iby file
-../rom/ssl.iby CORE_OS_LAYER_IBY_EXPORT_PATH(ssl.iby)
-
-//Exporting stdcpp iby file
-../rom/stdcpp4.iby CORE_OS_LAYER_IBY_EXPORT_PATH(stdcpp4.iby)
-
-//Exporting stdlibs iby file
-../rom/stdlibs.iby CORE_OS_LAYER_IBY_EXPORT_PATH(stdlibs.iby)
-
-
-
-
-
-//exporting openc_stdlibs stub sis
-../stdlibs/install/openc_stdlibs_stub.sis /epoc32/data/z/system/install/openc_stdlibs_stub.sis
-//exporting openc_ssl stub sis
-../ssl/install/openc_ssl_stub.sis /epoc32/data/z/system/install/openc_ssl_stub.sis
-//exporting openc_libzcore_stub.sis
-../ssl/install/openc_libzcore_stub.sis /epoc32/data/z/system/install/openc_libzcore_stub.sis
-//exporting openc_glib stub sis
-../glib/install/openc_glib_stub.sis /epoc32/data/z/system/install/openc_glib_stub.sis
-//exporting stdcpp stub sis
-../stdcpp/install/stdcpp_stub.SIS /epoc32/data/z/system/install/stdcpp_stub.sis
-
-//exporting rpipe stub sis
-../stdlibs/install/rpipe_stub.SIS /epoc32/data/z/system/install/rpipe_stub.sis
-
-// exporting openc_liblogger stub sis
-../stdlibs/install/openc_liblogger_stub.sis /epoc32/data/z/system/install/openc_liblogger_stub.sis
-
// End of File
--- a/package_definition.xml Mon Mar 22 12:57:04 2010 -0700
+++ b/package_definition.xml Mon Mar 29 12:27:51 2010 +0100
@@ -158,7 +158,7 @@
</component>
<component id="ossrv_build" filter="s60" name="Generic OS Services Build">
<!-- exports should be moved to individual components -->
- <unit bldFile="group"/>
+ <unit bldFile="rom"/>
</component>
<component id="ossrv_plat" filter="s60" name="Generic OS Services Platform Interfaces" class="api">
<unit bldFile="ossrv_plat/libutils/group"/>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/rom/bld.inf Mon Mar 29 12:27:51 2010 +0100
@@ -0,0 +1,54 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+
+PRJ_EXPORTS
+//Exporting glib iby file
+../rom/glib.iby CORE_OS_LAYER_IBY_EXPORT_PATH(glib.iby)
+
+//Exporting ssl iby file
+../rom/ssl.iby CORE_OS_LAYER_IBY_EXPORT_PATH(ssl.iby)
+
+//Exporting stdcpp iby file
+../rom/stdcpp4.iby CORE_OS_LAYER_IBY_EXPORT_PATH(stdcpp4.iby)
+
+//Exporting stdlibs iby file
+../rom/stdlibs.iby CORE_OS_LAYER_IBY_EXPORT_PATH(stdlibs.iby)
+
+
+
+
+
+//exporting openc_stdlibs stub sis
+../stdlibs/install/openc_stdlibs_stub.sis /epoc32/data/z/system/install/openc_stdlibs_stub.sis
+//exporting openc_ssl stub sis
+../ssl/install/openc_ssl_stub.sis /epoc32/data/z/system/install/openc_ssl_stub.sis
+//exporting openc_libzcore_stub.sis
+../ssl/install/openc_libzcore_stub.sis /epoc32/data/z/system/install/openc_libzcore_stub.sis
+//exporting openc_glib stub sis
+../glib/install/openc_glib_stub.sis /epoc32/data/z/system/install/openc_glib_stub.sis
+//exporting stdcpp stub sis
+../stdcpp/install/stdcpp_stub.SIS /epoc32/data/z/system/install/stdcpp_stub.sis
+
+//exporting rpipe stub sis
+../stdlibs/install/rpipe_stub.SIS /epoc32/data/z/system/install/rpipe_stub.sis
+
+// exporting openc_liblogger stub sis
+../stdlibs/install/openc_liblogger_stub.sis /epoc32/data/z/system/install/openc_liblogger_stub.sis
+
+// End of File
+