# HG changeset patch # User Tom Sutcliffe # Date 1284056494 -3600 # Node ID 5b2eab0658884bc37370fd7c7844258418c3f8c8 # Parent 31c9a831b70402f3d6dbc14fd295404feed335bc# Parent 683f4b1f08ce15be17f4d187881f561326a96091 merge diff -r 31c9a831b704 -r 5b2eab065888 build/common/fsh_rombuild_defs.iby --- a/build/common/fsh_rombuild_defs.iby Tue Sep 07 20:38:36 2010 +0100 +++ b/build/common/fsh_rombuild_defs.iby Thu Sep 09 19:21:34 2010 +0100 @@ -22,7 +22,7 @@ #define FSHELL_DATA_FILE(fileNameFrom, fileNameTo) data=##fileNameFrom fileNameTo #define FSHELL_EXECUTABLE_FILE(fileName) file=\epoc32\release\##MAIN##\##BUILD##\##fileName sys\bin\##fileName -#define FSHELL_EXECUTABLE_AS_DATA(fileNameFrom, fileNameTo) data=\epoc32\release\##MAIN##\##BUILD##\fileNameFrom sys\bin\##fileNameTo +#define FSHELL_EXECUTABLE_AS_DATA(fileNameFrom, fileNameTo) data=\epoc32\release\##MAIN##\##BUILD##\##fileNameFrom sys\bin\##fileNameTo #define FSHELL_DEBUG_EXECUTABLE_FILE(fileName) file=\epoc32\release\##MAIN##\##BUILD##\##fileName sys\bin\##fileName #define FSHELL_RENAMED_EXECUTABLE_FILE(fileNameFrom, fileNameTo) file=\epoc32\release\##MAIN##\##BUILD##\##fileNameFrom sys\bin\##fileNameTo #define FSHELL_DEBUG_RENAMED_EXECUTABLE_FILE(fileNameFrom, fileNameTo) file=\epoc32\release\##MAIN##\##BUILD##\##fileNameFrom sys\bin\##fileNameTo @@ -46,9 +46,9 @@ #define FSHELL_DATA_FILE(fileNameFrom, fileNameTo) data=##fileNameFrom fileNameTo #define FSHELL_EXECUTABLE_FILE(fileName) file=##ABI_DIR##\##DEBUG_DIR##\##fileName sys\bin\##fileName -#define FSHELL_EXECUTABLE_AS_DATA(fileNameFrom, fileNameTo) file=##ABI_DIR##\##DEBUG_DIR##\fileNameFrom sys\bin\##fileNameTo +#define FSHELL_EXECUTABLE_AS_DATA(fileNameFrom, fileNameTo) data=##ABI_DIR##\##DEBUG_DIR##\##fileNameFrom sys\bin\##fileNameTo #define FSHELL_DEBUG_EXECUTABLE_FILE(fileName) file=##ABI_DIR##\##DEBUG_DIR##\##fileName sys\bin\##fileName -#define FSHELL_RENAMED_EXECUTABLE_FILE(fileNameFrom, fileNameTo) file=##ABI_DIR##\##BUILD_DIR\##fileNameFrom sys\bin\##fileNameTo +#define FSHELL_RENAMED_EXECUTABLE_FILE(fileNameFrom, fileNameTo) file=##ABI_DIR##\##BUILD_DIR##\##fileNameFrom sys\bin\##fileNameTo #define FSHELL_DEBUG_RENAMED_EXECUTABLE_FILE(fileNameFrom, fileNameTo) file=##ABI_DIR##\##DEBUG_DIR\##fileNameFrom sys\bin\##fileNameTo #define FSHELL_KERNEL_EXTENSION(fileName) ROM_IMAGE[0] FSHELL_EXT=##KERNEL_DIR##\##BUILD_DIR##\##fileName sys\bin\##fileName #define FSHELL_DEBUG_KERNEL_EXTENSION(fileName) ROM_IMAGE[0] { FSHELL_EXT=##KERNEL_DIR##\##DEBUG_DIR##\##fileName sys\bin\##fileName } diff -r 31c9a831b704 -r 5b2eab065888 core/src/commands.cpp --- a/core/src/commands.cpp Tue Sep 07 20:38:36 2010 +0100 +++ b/core/src/commands.cpp Thu Sep 09 19:21:34 2010 +0100 @@ -5260,7 +5260,11 @@ RChildProcess proc; TRAPL(proc.CreateL(command, args, IoSession(), aPcons, &Env()), _L("Could not create process %S"), &command); + // Wait for process to rendezvous before returning to close aPcons - we have to give the child time to connect to the console. + TRequestStatus status; + proc.Process().Rendezvous(status); proc.Detach(); + User::WaitForRequest(status); proc.Close(); } diff -r 31c9a831b704 -r 5b2eab065888 libraries/lineeditor/src/line_editor.cpp --- a/libraries/lineeditor/src/line_editor.cpp Tue Sep 07 20:38:36 2010 +0100 +++ b/libraries/lineeditor/src/line_editor.cpp Thu Sep 09 19:21:34 2010 +0100 @@ -34,8 +34,10 @@ RConsole::RConsole(MAbstractConsoleWriter& aStdout) : iStdout(aStdout), iCursorPos(TPoint(0, 0)), iCursorMode(EInsert), iCursorVisible(EFalse) { - iStdout.GetScreenSize(iSize); - SetCursorVisible(ETrue); + // Calling these here cause fshell to deadlock if being launched within a "pcons start fshell". + // Doesn't appear to cause any problems removing them, as Start()/Refresh() get called shortly after. + //iStdout.GetScreenSize(iSize); + //SetCursorVisible(ETrue); } void RConsole::Close()