Fix minor problems with the new ".archive" command changes.

FossilOrigin-Name: 612b30c95f948438016bd11470e9dd114d7bb064418a57e5954a094d2ca77f69
diff --git a/manifest b/manifest
index 36a782c..7c0f018 100644
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C In\sthe\sfileio.c\sextension,\schange\sthe\sfiletype(MODE)\sfunction\sinto\slsmode(MODE).\nUse\sthe\snew\slsmode(MODE)\sfunction\sin\sshell.c.
-D 2018-01-10T17:19:16.761
+C Fix\sminor\sproblems\swith\sthe\snew\s".archive"\scommand\schanges.
+D 2018-01-10T17:39:54.594
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F Makefile.in 12b6daa4bdb03fa87da27cbc205ff88ace645475b5be79414a3038b68ade14cb
@@ -484,7 +484,7 @@
 F src/resolve.c bbee7e31d369a18a2f4836644769882e9c5d40ef4a3af911db06410b65cb3730
 F src/rowset.c 7b7e7e479212e65b723bf40128c7b36dc5afdfac
 F src/select.c 8b22abe193e4d8243befa2038e4ae2405802fed1c446e5e502d11f652e09ba74
-F src/shell.c.in 926858c02fd4f644c79caca8e266bf6391dfc391fc07770d69a9db95c964eded
+F src/shell.c.in 4cb216da4adaac57faf03a502584d44d96f99b3235a6d2956750670c6aabc8b1
 F src/sqlite.h.in 1f1a2da222ec57465794e8984d77f32d0bd0da80cdc136beadda461a0be9d80c
 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
 F src/sqlite3ext.h c02d628cca67f3889c689d82d25c3eb45e2c155db08e4c6089b5840d64687d34
@@ -1697,7 +1697,7 @@
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 28ab930436fea33c79073e84f39d9e381fa60b4702a5dcbfaaed72baeeae8431
-R 820c3174d3fb9a7cd02211a2c674f634
+P 52d12ba9f33c1f2620776e189c81f3bf991759344ecdd167ea2a6107f0972b9d
+R 1170208662cbaecd416c0d66fbee2d48
 U drh
-Z 3f66494887095c0b877f4d9025ad2b7a
+Z 6adbf06d453c4d240bb3d139f4f72e24
diff --git a/manifest.uuid b/manifest.uuid
index 77b89e1..c546e6b 100644
--- a/manifest.uuid
+++ b/manifest.uuid
@@ -1 +1 @@
-52d12ba9f33c1f2620776e189c81f3bf991759344ecdd167ea2a6107f0972b9d
\ No newline at end of file
+612b30c95f948438016bd11470e9dd114d7bb064418a57e5954a094d2ca77f69
\ No newline at end of file
diff --git a/src/shell.c.in b/src/shell.c.in
index b6d51e0..f994244 100644
--- a/src/shell.c.in
+++ b/src/shell.c.in
@@ -5059,12 +5059,12 @@
 ){
   ArCommand cmd;
   int rc;
+  memset(&cmd, 0, sizeof(cmd));
   rc = arParseCommand(azArg, nArg, &cmd);
   if( rc==SQLITE_OK ){
     int eDbType = SHELL_OPEN_UNSPEC;
     cmd.p = pState;
     cmd.db = pState->db;
-    cmd.zSrcTable = 0;
     if( cmd.zFile ){
       eDbType = deduceDatabaseType(cmd.zFile);
     }else{
@@ -5107,6 +5107,9 @@
 #ifdef SQLITE_HAVE_ZLIB
       sqlite3_sqlar_init(cmd.db, 0, 0);
 #endif
+      sqlite3_create_function(cmd.db, "shell_putsnl", 1, SQLITE_UTF8, cmd.p,
+                              shellPutsFunc, 0, 0);
+
     }
     if( cmd.zSrcTable==0 ){
       if( cmd.eCmd!=AR_CMD_CREATE