diff -r 523717cdb0ad -r 81da3301b632 connectivitymodules/SeCon/services/pcd/src/sconmetadata.cpp --- a/connectivitymodules/SeCon/services/pcd/src/sconmetadata.cpp Tue May 25 13:35:25 2010 +0300 +++ b/connectivitymodules/SeCon/services/pcd/src/sconmetadata.cpp Wed Jun 09 10:36:33 2010 +0300 @@ -568,7 +568,7 @@ CleanupStack::PopAndDestroy( &file ); CleanupStack::PushL( readBuffer ); - + TRACE_FUNC_EXIT; return readBuffer; } @@ -1023,19 +1023,21 @@ denom = 0; Mem::Copy(&numer, ratData + ((y * 2) * sizeof(numer)), sizeof(numer)); Mem::Copy(&denom, ratData + (((y * 2) + 1) * sizeof(numer)), sizeof(denom)); - - if ( y == 0 )// degrees - { - degrees = numer/denom; - } - else if ( y == 1 )// minutes - { - minutes = numer/denom; - } - else if ( y == 2 )// seconds - { - seconds = numer/denom; - } + if (denom != 0) + { + if ( y == 0 )// degrees + { + degrees = numer/denom; + } + else if ( y == 1 )// minutes + { + minutes = numer/denom; + } + else if ( y == 2 )// seconds + { + seconds = numer/denom; + } + } } _LIT(KFormat, "%.0f°%.0f'%.2f\"" ); aPosDegrees.Format( KFormat, degrees, minutes, seconds );