# HG changeset patch # User Dremov Kirill (Nokia-D-MSW/Tampere) # Date 1268649941 -7200 # Node ID ac96196b945c301b9fa41e0bc9e8f11d770d3bd0 # Parent 5e30ef2e26cbd5045f99400f903ac4ba825d9076 Revision: 201007 Kit: 201010 diff -r 5e30ef2e26cb -r ac96196b945c graphicstest/graphicstestharness/src/TTMSGraphicsStep.cpp --- a/graphicstest/graphicstestharness/src/TTMSGraphicsStep.cpp Fri Mar 12 15:50:05 2010 +0200 +++ b/graphicstest/graphicstestharness/src/TTMSGraphicsStep.cpp Mon Mar 15 12:45:41 2010 +0200 @@ -32,20 +32,19 @@ void CTTMSGraphicsStep::CleanUpAndWriteResults() { TBuf<256> testID; - TBuf<8> unusableTestResult; //In graphicstestharness it is not known whether the test was started with - //!Result=Fail or !Error=KErrSomething given as paramenter to RUN_TEST_STEP + TBuf<8> testResult; for (TInt iArrayIndex=0; iArrayIndex < iArrayTMSData.Count(); iArrayIndex++) { CTMSDataColumn columnData = iArrayTMSData[iArrayIndex]; testID.Copy(columnData.iTheID); - unusableTestResult.Copy(columnData.iTheResult); //unusable because we don't know if the test is expected to pass or fail + testResult.Copy(columnData.iTheResult); INFO_PRINTF2(_L("START_TESTCASE %S"),&testID); INFO_PRINTF2(_L("Line = 1 Command = START_TESTCASE %S"),&testID); INFO_PRINTF2(_L("END_TESTCASE %S"),&testID); - INFO_PRINTF2(_L("Line = 1 Command = END_TESTCASE %S"),&testID); + INFO_PRINTF3(_L("Line = 1 Command = END_TESTCASE %S ***TestCaseResult = %S"),&testID,&testResult); } iArrayTMSData.Close(); diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/SERVER/openwfc/panics.h --- a/windowing/windowserver/SERVER/openwfc/panics.h Fri Mar 12 15:50:05 2010 +0200 +++ b/windowing/windowserver/SERVER/openwfc/panics.h Mon Mar 15 12:45:41 2010 +0200 @@ -1,4 +1,4 @@ -// Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2003-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" @@ -162,6 +162,7 @@ EWsPanicInvalidRotation = 127, //Invalid rotation used EWsPanicInvalidPointerOffset = 128, //The pointer offset value in wsini.ini is invalid. EWsPanicArrayInsertFailed = 129, //Array insert failed. + EWsPanicCompleteNullMessage = 130, //RMessage2 is NULL prior to calling Complete(). }; void Panic(TWservPanic aPanic); diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/nga/SERVER/openwfc/CLIENT.CPP --- a/windowing/windowserver/nga/SERVER/openwfc/CLIENT.CPP Fri Mar 12 15:50:05 2010 +0200 +++ b/windowing/windowserver/nga/SERVER/openwfc/CLIENT.CPP Mon Mar 15 12:45:41 2010 +0200 @@ -1,4 +1,4 @@ -// Copyright (c) 1994-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 1994-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" @@ -1217,7 +1217,7 @@ iInternalFlags|=ERemoveKeyCode; break; case EWsClOpSimulateXyInput: - TWsPointer::SetXyInputType(*pData.XyInput); + TWsPointer::SetXyInputType(static_cast(*pData.XyInput)); break; #endif case EWsClOpNoFlickerFree: @@ -1844,23 +1844,28 @@ void CWsClient::CompleteMessage(const RMessage2& aMessage,TInt aReason) { - WS_ASSERT_DEBUG(!aMessage.IsNull(),EWsPanicPanicFlagError); - if (iInternalFlags&EPanicClientAsSoonAsPossible) + WS_ASSERT_DEBUG(!aMessage.IsNull(),EWsPanicCompleteNullMessage); + // This defensive check should not be necessary as aMessage should never + // be null, but in rare situations it is and WServ would die without this check. + if (!aMessage.IsNull()) { - aMessage.Panic(KWSERVSessionPanicCategory,iPanicReason); - iInternalFlags&=~EPanicClientAsSoonAsPossible; - } - else - { - if(!iResponseHandle) - aMessage.Complete(aReason); + if (iInternalFlags&EPanicClientAsSoonAsPossible) + { + aMessage.Panic(KWSERVSessionPanicCategory,iPanicReason); + iInternalFlags&=~EPanicClientAsSoonAsPossible; + } else { - aMessage.Complete(*iResponseHandle); - iResponseHandle=NULL; + if(!iResponseHandle) + aMessage.Complete(aReason); + else + { + aMessage.Complete(*iResponseHandle); + iResponseHandle=NULL; + } } } - } + } void CWsClient::ServiceError(const RMessage2& /*aMessage*/,TInt aError) { diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/nga/SERVER/openwfc/wnredraw.cpp --- a/windowing/windowserver/nga/SERVER/openwfc/wnredraw.cpp Fri Mar 12 15:50:05 2010 +0200 +++ b/windowing/windowserver/nga/SERVER/openwfc/wnredraw.cpp Mon Mar 15 12:45:41 2010 +0200 @@ -252,13 +252,18 @@ for (CWsSpriteBase * sprite = iWsWin->iSpriteList; sprite; sprite = sprite->Next()) { + TBool hasRedrawBegun = EFalse; STACK_REGION redrawRegion; sprite->CalcRedrawRegion(aRegion, redrawRegion); if(redrawRegion.CheckError() || !redrawRegion.IsEmpty()) { if (sprite->IsFlashingEnabled() || sprite->IsDirty() || sprite->HasAnimation()) { - AnnotateSpriteRedrawStart(*iWsWin, *sprite, redrawRegion); + if (sprite->IsDirty() || sprite->HasAnimation()) + { + AnnotateSpriteRedrawStart(*iWsWin, *sprite, redrawRegion); + hasRedrawBegun = ETrue; + } if(sprite->HasAnimation()) { @@ -276,10 +281,16 @@ } //...call Redraw on the sprite - aGc->Reset(); + if (hasRedrawBegun) + { + aGc->Reset(); + } sprite->Redraw(aGc, redrawRegion); - AnnotateSpriteRedrawEnd(*iWsWin, *sprite); + if (hasRedrawBegun) + { + AnnotateSpriteRedrawEnd(*iWsWin, *sprite); + } } } redrawRegion.Close(); diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/tcsc/resources/wsini_csc_nga.ini Binary file windowing/windowserver/tcsc/resources/wsini_csc_nga.ini has changed diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/tcsc/resources/wsini_csc_nga_changetracking.ini Binary file windowing/windowserver/tcsc/resources/wsini_csc_nga_changetracking.ini has changed diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/tcsc/resources/wsini_csc_nga_h6.ini Binary file windowing/windowserver/tcsc/resources/wsini_csc_nga_h6.ini has changed diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/tcsc/resources/wsini_csc_nga_naviengine.ini Binary file windowing/windowserver/tcsc/resources/wsini_csc_nga_naviengine.ini has changed diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/tcsc/resources/wsini_csc_nga_qvga.ini Binary file windowing/windowserver/tcsc/resources/wsini_csc_nga_qvga.ini has changed diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/tcsc/resources/wsini_csc_nga_qvga_changetracking.ini Binary file windowing/windowserver/tcsc/resources/wsini_csc_nga_qvga_changetracking.ini has changed diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/tcsc/resources/wsini_csc_nga_vga.ini Binary file windowing/windowserver/tcsc/resources/wsini_csc_nga_vga.ini has changed diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/tcsc/resources/wsini_csc_nga_vga_changetracking.ini Binary file windowing/windowserver/tcsc/resources/wsini_csc_nga_vga_changetracking.ini has changed diff -r 5e30ef2e26cb -r ac96196b945c windowing/windowserver/test/scripts/wstest_config.cmd --- a/windowing/windowserver/test/scripts/wstest_config.cmd Fri Mar 12 15:50:05 2010 +0200 +++ b/windowing/windowserver/test/scripts/wstest_config.cmd Mon Mar 15 12:45:41 2010 +0200 @@ -2,7 +2,7 @@ rem Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). rem All rights reserved. rem This component and the accompanying materials are made available -rem under the terms of "Eclipse Public License v1.0" +rem under the terms of the License "Eclipse Public License v1.0" rem which accompanies this distribution, and is available rem at the URL "http://www.eclipse.org/legal/epl-v10.html". rem @@ -17,12 +17,11 @@ rem set nonnga=false if not defined EPOC_INI set EPOC_INI=\epoc32\data\epoc.ini -if /i "%1"=="uninstall" goto :uninstall -if /i "%2"=="changetracking" goto :install_changetracking if /i "%2"=="nonnga" set nonnga=true if /i "%3"=="nonnga" set nonnga=true if "%nonnga%"=="true" echo Configuring for Non-NGA - +if /i "%1"=="uninstall" goto :uninstall +if /i "%2"=="changetracking" goto :install_changetracking rem ================ install ================ :install @@ -34,36 +33,22 @@ call :doinstall %EMULATOR_DATA_DIR% multiscreen %2 %3 ) -rem Restore EPOC.INI from backup -if exist %EPOC_INI%.backup xcopy /r /y %EPOC_INI%.backup %EPOC_INI% >nul +echo If EPOC.INI isn't already backuped then backup EPOC.INI to EPOC.INI.bak +if not exist %EPOC_INI%.bak copy /y %EPOC_INI% %EPOC_INI%.bak -echo Backing up EPOC.INI. -if not exist %EPOC_INI%.backup copy %EPOC_INI% %EPOC_INI%.backup >nul - -echo -------------------------------------------------------------- -echo original epoc.ini: %EPOC_INI% -type %EPOC_INI% -echo -------------------------------------------------------------- echo Editing EPOC.INI to use multiscreen. echo. >> %EPOC_INI% echo StartupMode ^7>> %EPOC_INI% echo _NewScreen_ >> %EPOC_INI% echo ScreenWidth 640 >> %EPOC_INI% echo ScreenHeight 240 >> %EPOC_INI% - -echo -------------------------------------------------------------- -echo new epoc.ini: %EPOC_INI% -type %EPOC_INI% -echo -------------------------------------------------------------- - goto :EOF - :doinstall -rem Back up WSINI.INI -if not exist %1\z\system\data\wsini.bak if exist %1\z\system\data\wsini.ini copy %1\z\system\data\wsini.ini %1\z\system\data\wsini.bak >nul -if not exist %1\z\resource\data\wsini.bak if exist %1\z\resource\data\wsini.ini copy %1\z\resource\data\wsini.ini %1\z\resource\data\wsini.bak >nul +rem If WSINI.INI(s) aren't already backuped then backup WSINI.INI(s) +if not exist %1\z\system\data\wsini.bak if exist %1\z\system\data\wsini.ini copy /y %1\z\system\data\wsini.ini %1\z\system\data\wsini.bak >nul +if not exist %1\z\resource\data\wsini.bak if exist %1\z\resource\data\wsini.ini copy /y %1\z\resource\data\wsini.ini %1\z\resource\data\wsini.bak >nul rem Back up ECONS.DLL if exist %1\econs.dll copy /y %1\econs.dll %1\econs-temp.dll @@ -73,24 +58,21 @@ rem Replace WSINI.INI with test version if "%nonnga%"=="true" goto :doinstall_nonnga -if exist %1\z\system\data\wsini.ini xcopy /r /y %1\z\wstest\wservu_multiscreen.ini %1\z\system\data\wsini.ini >nul -if exist %1\z\resource\data\wsini.ini xcopy /r /y %1\z\wstest\wservu_multiscreen.ini %1\z\resource\data\wsini.ini >nul +if exist %1\z\system\data\wsini.ini copy /y %1\z\wstest\wservu_multiscreen.ini %1\z\system\data\wsini.ini +if exist %1\z\resource\data\wsini.ini copy /y %1\z\wstest\wservu_multiscreen.ini %1\z\resource\data\wsini.ini goto :doinstall_editwsini :doinstall_nonnga -if exist %1\z\system\data\wsini.ini xcopy /r /y \graphics\wserv\group\wservu_multiscreen-nonnga.ini %1\z\system\data\wsini.ini >nul -if exist %1\z\resource\data\wsini.ini xcopy /r /y \graphics\wserv\group\wservu_multiscreen-nonnga.ini %1\z\resource\data\wsini.ini >nul +if exist %1\z\system\data\wsini.ini copy /y %1\z\wstest\wservu_multiscreen-nonnga.ini %1\z\system\data\wsini.ini +if exist %1\z\resource\data\wsini.ini copy /y %1\z\wstest\wservu_multiscreen-nonnga.ini %1\z\resource\data\wsini.ini :doinstall_editwsini rem Edit WSINI.INI to run tests automatically/multiscreen -if exist %1\z\system\data\wsini.ini perl %1\z\wstest\wsini-writer.pl %1\z\system\data\wsini.ini %2 %3 %4 +if exist %1\z\system\data\wsini.ini perl %1\z\wstest\wsini-writer.pl %1\z\system\data\wsini.ini %2 %3 %4 if exist %1\z\resource\data\wsini.ini perl %1\z\wstest\wsini-writer.pl %1\z\resource\data\wsini.ini %2 %3 %4 goto :EOF - - - rem ================ install changetracking ================ :install_changetracking @@ -102,16 +84,8 @@ call :doinstall_changetracking %EMULATOR_DATA_DIR% multiscreen %2 %3 ) -rem Restore EPOC.INI from backup -if exist %EPOC_INI%.backup xcopy /r /y %EPOC_INI%.backup %EPOC_INI% >nul - -echo Backing up EPOC.INI. -if not exist %EPOC_INI%.backup copy %EPOC_INI% %EPOC_INI%.backup >nul - -echo -------------------------------------------------------------- -echo original epoc.ini: %EPOC_INI% -type %EPOC_INI% -echo -------------------------------------------------------------- +echo If EPOC.INI isn't already backuped then backup EPOC.INI to EPOC.INI.bak +if not exist %EPOC_INI%.bak copy /y %EPOC_INI% %EPOC_INI%.bak >nul echo Editing EPOC.INI to use multiscreen. echo. >> %EPOC_INI% @@ -119,11 +93,6 @@ echo _NewScreen_ >> %EPOC_INI% echo ScreenWidth 640 >> %EPOC_INI% echo ScreenHeight 240 >> %EPOC_INI% -echo -------------------------------------------------------------- -echo new epoc.ini: %EPOC_INI% -type %EPOC_INI% -echo -------------------------------------------------------------- - goto :EOF :doinstall_changetracking @@ -135,12 +104,12 @@ if exist %1\wsecons.dll copy /y %1\wsecons.dll %1\econs.dll rem Back up WSINI.INI -if not exist %1\z\system\data\wsini.bak if exist %1\z\system\data\wsini.ini copy %1\z\system\data\wsini.ini %1\z\system\data\wsini.bak >nul -if not exist %1\z\resource\data\wsini.bak if exist %1\z\resource\data\wsini.ini copy %1\z\resource\data\wsini.ini %1\z\resource\data\wsini.bak >nul +if not exist %1\z\system\data\wsini.bak if exist %1\z\system\data\wsini.ini copy /y %1\z\system\data\wsini.ini %1\z\system\data\wsini.bak >nul +if not exist %1\z\resource\data\wsini.bak if exist %1\z\resource\data\wsini.ini copy /y %1\z\resource\data\wsini.ini %1\z\resource\data\wsini.bak >nul rem Replace WSINI.INI with test changetracking version -if exist %1\z\system\data\wsini.ini xcopy /r /y %1\z\wstest\wservu_multiscreen_changetracking.ini %1\z\system\data\wsini.ini >nul -if exist %1\z\resource\data\wsini.ini xcopy /r /y %1\z\wstest\wservu_multiscreen_changetracking.ini %1\z\resource\data\wsini.ini >nul +if exist %1\z\system\data\wsini.ini copy /y %1\z\wstest\wservu_multiscreen_changetracking.ini %1\z\system\data\wsini.ini >nul +if exist %1\z\resource\data\wsini.ini copy /y %1\z\wstest\wservu_multiscreen_changetracking.ini %1\z\resource\data\wsini.ini >nul rem Edit WSINI.INI to run tests automatically/multiscreen if exist %1\z\system\data\wsini.ini perl %1\z\wstest\wsini-writer.pl %1\z\system\data\wsini.ini %2 %3 %4 @@ -159,15 +128,27 @@ call :douninstall %EMULATOR_DATA_DIR% ) -echo Restoring EPOC.INI. -if exist %EPOC_INI%.backup xcopy /r /y %EPOC_INI%.backup %EPOC_INI% >nul +echo If EPOC.INI was already backuped then restore EPOC.INI from EPOC.INI.bak +if exist %EPOC_INI%.bak ( + echo Restore EPOC.INI from backup + copy /y %EPOC_INI%.bak %EPOC_INI% >nul + del /f /q %EPOC_INI%.bak >nul +) goto :EOF :douninstall -rem Restore WSINI.INI -if exist %1\z\system\data\wsini.bak xcopy /r /y %1\z\system\data\wsini.bak %1\z\system\data\wsini.ini >nul -if exist %1\z\resource\data\wsini.bak xcopy /r /y %1\z\resource\data\wsini.bak %1\z\resource\data\wsini.ini >nul + +rem If WSINI.INI(s) were already backuped then restore WSINI.INI +if exist %1\z\system\data\wsini.bak ( +copy /y %1\z\system\data\wsini.bak %1\z\system\data\wsini.ini >nul +del /f /q %1\z\system\data\wsini.bak >nul +) +if exist %1\z\resource\data\wsini.bak ( +copy /y %1\z\resource\data\wsini.bak %1\z\resource\data\wsini.ini >nul +del /f /q %1\z\resource\data\wsini.bak >nul +) + echo Restoring backedup ECONS.DLL if exist %1\econs-temp.dll copy /y %1\econs-temp.dll %1\econs.dll goto :EOF