diff -r 6a26ca985d90 -r 849a0b46c767 core/src/commands.cpp --- a/core/src/commands.cpp Wed Oct 13 15:07:15 2010 +0100 +++ b/core/src/commands.cpp Sun Oct 17 18:43:12 2010 +0100 @@ -283,7 +283,9 @@ else { CDir* files; - LeaveIfErr(FsL().GetDir(iFileName, iOptAll ? KEntryAttMaskSupported : KEntryAttNormal | KEntryAttDir, ESortByName, files), _L("Couldn't read whole directory into memory - try using -1")); + TInt err = FsL().GetDir(iFileName, iOptAll ? KEntryAttMaskSupported : KEntryAttNormal | KEntryAttDir, ESortByName, files); + if (err == KErrNoMemory) LeaveIfErr(err, _L("Couldn't read whole directory into memory - try using --one option")); + else LeaveIfErr(err, _L("Couldn't read directory")); CleanupStack::PushL(files); PrintDirContentL(*files); CleanupStack::PopAndDestroy(files); @@ -2520,6 +2522,8 @@ } +#ifdef FSHELL_CORE_SUPPORT_FSCK + // // CCmdFsck. // @@ -2584,6 +2588,8 @@ aArguments.AppendStringL(iDriveLetter, KCmdFsckArg); } +#endif // FSHELL_CORE_SUPPORT_FSCK + // // CCmdDriver. @@ -2691,6 +2697,8 @@ } +#ifdef FSHELL_CORE_SUPPORT_CHUNKINFO + // // CCmdChunkInfo. // @@ -2716,7 +2724,6 @@ void CCmdChunkInfo::ListChunksL() { -#ifdef FSHELL_MEMORY_ACCESS_SUPPORT TInt bufSize = 1024; TInt err = KErrNone; HBufC8* addressesBuf; @@ -2794,12 +2801,10 @@ } CleanupStack::PopAndDestroy(addressesBuf); -#endif } void CCmdChunkInfo::PrintChunkInfoL() { -#ifdef FSHELL_MEMORY_ACCESS_SUPPORT TChunkKernelInfo chunkInfo; TPckg chunkInfoPckg(chunkInfo); TInt err = iMemAccess.GetObjectInfo(EChunk, (TUint8*)iAddress, chunkInfoPckg); @@ -2870,7 +2875,6 @@ PrintWarning(_L("Unable to read RHeap info: %d"), err); } } -#endif } void CCmdChunkInfo::PrintSizeL(const TDesC& aCaption, TInt aSize) @@ -2914,7 +2918,6 @@ void CCmdChunkInfo::DoRunL() { -#ifdef FSHELL_MEMORY_ACCESS_SUPPORT iFormatter = CTextFormatter::NewL(Stdout()); iBuf = IoUtils::CTextBuffer::NewL(0x100); LoadMemoryAccessL(); @@ -2941,10 +2944,6 @@ DoPrintL(); } } -#else - PrintError(KErrNotSupported, _L("Unable to fetch chunk information because fshell was not built with FSHELL_MEMORY_ACCESS_SUPPORT defined. That probably means this plaform doesn't support the MemoryAccess device driver.")); - User::Leave(KErrNotSupported); -#endif } void CCmdChunkInfo::OptionsL(RCommandOptionList& aOptions) @@ -2969,6 +2968,10 @@ aArguments.AppendUintL(iAddress, KCmdChunkInfoArg); } +#endif // FSHELL_CORE_SUPPORT_CHUNKINFO + + +#ifdef FSHELL_CORE_SUPPORT_SVRINFO // // CCmdSvrInfo. @@ -2994,7 +2997,6 @@ void CCmdSvrInfo::ListServersL() { -#ifdef FSHELL_MEMORY_ACCESS_SUPPORT TInt bufSize = 1024; TInt err = KErrNone; HBufC8* addressesBuf; @@ -3046,13 +3048,10 @@ } CleanupStack::PopAndDestroy(addressesBuf); - -#endif } void CCmdSvrInfo::ListSessionsL() { -#ifdef FSHELL_MEMORY_ACCESS_SUPPORT TPckg serverInfoPckg(iServerInfo); TInt err = iMemAccess.GetObjectInfo(EServer, (TUint8*)iAddress, serverInfoPckg); if (err) @@ -3110,7 +3109,6 @@ } } } -#endif } const TDesC& CCmdSvrInfo::Name() const @@ -3121,7 +3119,6 @@ void CCmdSvrInfo::DoRunL() { -#ifdef FSHELL_MEMORY_ACCESS_SUPPORT iFormatter = CTextFormatter::NewL(Stdout()); iBuf = IoUtils::CTextBuffer::NewL(0x100); LoadMemoryAccessL(); @@ -3137,10 +3134,6 @@ iFormatter->TabulateL(0, 2, iBuf->Descriptor(), ETruncateLongestColumn); Write(iFormatter->Descriptor()); -#else - PrintError(KErrNotSupported, _L("Unable to fetch server information because fshell was not built with FSHELL_MEMORY_ACCESS_SUPPORT defined. That probably means this plaform doesn't support the MemoryAccess device driver.")); - User::Leave(KErrNotSupported); -#endif } void CCmdSvrInfo::ArgumentsL(RCommandArgumentList& aArguments) @@ -3149,6 +3142,7 @@ aArguments.AppendUintL(iAddress, KCmdSvrInfoArg); } +#endif // FSHELL_CORE_SUPPORT_SVRINFO // // CCmdTickle. @@ -4146,6 +4140,8 @@ // CCmdReadMem. // +#ifdef FSHELL_CORE_SUPPORT_READMEM + CCommandBase* CCmdReadMem::NewLC() { CCmdReadMem* self = new(ELeave) CCmdReadMem(); @@ -4170,7 +4166,6 @@ void CCmdReadMem::DoRunL() { -#ifdef FSHELL_MEMORY_ACCESS_SUPPORT LoadMemoryAccessL(); if (iFileName.Length() > 0) @@ -4210,11 +4205,6 @@ } bytesRead += bytesToRead; } - -#else - PrintError(KErrNotSupported, _L("Unable to read memory because fshell was not built with FSHELL_MEMORY_ACCESS_SUPPORT defined. That probably means this plaform doesn't support the MemoryAccess device driver.")); - User::Leave(KErrNotSupported); -#endif } void CCmdReadMem::OptionsL(RCommandOptionList& aOptions) @@ -4234,6 +4224,8 @@ aArguments.AppendFileNameL(iFileName, KCmdArgFileName); } +#endif // FSHELL_CORE_SUPPORT_READMEM + // // CCmdE32Header. @@ -4410,6 +4402,8 @@ // CCmdObjInfo. // +#ifdef FSHELL_CORE_SUPPORT_OBJINFO + CCommandBase* CCmdObjInfo::NewLC() { CCmdObjInfo* self = new(ELeave) CCmdObjInfo(); @@ -4432,8 +4426,6 @@ return KName; } -#ifdef FSHELL_MEMORY_ACCESS_SUPPORT - #define CASE_RETURN_LIT(XXX) case XXX: { _LIT(_KLit, #XXX); return &_KLit; } #define DEFAULT_RETURN_LIT(XXX) default: { _LIT(_KLit, XXX); return &_KLit; } @@ -4593,11 +4585,8 @@ CleanupStack::PopAndDestroy(addressesBuf); } -#endif // FSHELL_MEMORY_ACCESS_SUPPORT - void CCmdObjInfo::DoRunL() { -#ifdef FSHELL_MEMORY_ACCESS_SUPPORT LoadMemoryAccessL(); if (iObjectAddress) @@ -4640,11 +4629,6 @@ { PrintReferencedObjectDetailsL(EOwnerThread, iThreadId); } - -#else - PrintError(KErrNotSupported, _L("Unable to fetch object information because fshell was not built with FSHELL_MEMORY_ACCESS_SUPPORT defined. That probably means this plaform doesn't support the MemoryAccess device driver.")); - User::Leave(KErrNotSupported); -#endif } void CCmdObjInfo::OptionsL(RCommandOptionList& aOptions) @@ -4666,6 +4650,8 @@ aArguments.AppendUintL(iObjectAddress, KCmdArgObjectAddress); } +#endif // FSHELL_CORE_SUPPORT_OBJINFO + // // CCmdTouch. //