--- detailsform.c.orig	Tue Jun 25 13:38:51 2002
+++ detailsform.c	Tue Jun 25 14:25:43 2002
@@ -70,7 +70,10 @@
     urlField    = GetObjectPtr( frmDetailsLink );
     reference   = GetHistoryCurrent();
 
-    AddURLToField( urlField, reference );
+    if( AddURLToField( urlField, reference ) )
+        FrmShowObject( detailsForm, FrmGetObjectIndex( detailsForm, frmDetailsCopy ) );
+    else
+        FrmHideObject( detailsForm, FrmGetObjectIndex( detailsForm, frmDetailsCopy ) );
     FrmDrawForm( detailsForm );
 
     AddDocNameTitle( Prefs()->docName );
--- externalform.c.orig	Tue Jun 25 13:39:02 2002
+++ externalform.c	Tue Jun 25 14:26:34 2002
@@ -61,7 +61,7 @@
 
 
 /* Initialize field with URL string */
-void AddURLToField
+Boolean AddURLToField
     (
     FieldType*  fldPtr, /* pointer to field */
     Int16       index   /* index in URL record */
@@ -96,7 +96,7 @@
     
             linkHandle = ReturnRecordHandle( *numP );
             if ( linkHandle == NULL )
-                return;
+                return false;
     
             uncompressHandle    = NULL;
             linkDocument        = MemHandleLock( linkHandle );
@@ -134,7 +134,9 @@
 
         SysCopyStringResource( buff, strExternNoURL );
         FldInsert( fldPtr, buff, StrLen( buff ) );
+        return false;
     }
+    return true;
 }
 
 
@@ -146,9 +148,11 @@
     FieldType*  field;
 
     field = GetObjectPtr( frmExternalLinksLink );
-    AddURLToField( field, linkIdx );
-
     externallinksForm = FrmGetFormPtr( frmExternalLinks );
+    if( AddURLToField( field, linkIdx ) )
+        FrmShowObject( externallinksForm, FrmGetObjectIndex( externallinksForm, frmExternalLinksCopy) );
+    else
+        FrmHideObject( externallinksForm, FrmGetObjectIndex( externallinksForm, frmExternalLinksCopy) );
     FrmDrawForm( externallinksForm );
 }
 
--- externalform.h.orig	Tue Jun 25 13:39:58 2002
+++ externalform.h	Tue Jun 25 13:41:39 2002
@@ -33,7 +33,7 @@
 extern void SetLinkIndex( Int16 index ) SECTION1;
 
 /* Initialize field with URL string */
-extern void AddURLToField( FieldType* fldPtr, Int16 index ) SECTION1;
+extern Boolean AddURLToField( FieldType* fldPtr, Int16 index ) SECTION1;
 
 /* Write the text from a TextField to a Memo */
 extern void WriteMemo( FieldType* field ) SECTION1;
--- viewer.rcp.in.orig	Tue Jun 25 14:02:39 2002
+++ viewer.rcp.in	Tue Jun 25 14:04:15 2002
@@ -443,8 +443,8 @@
     FIELD ID frmDetailsLink AT (PREVRIGHT+2 PREVTOP 125 40) USABLE LEFTALIGN FONT 0 EDITABLE MAXCHARS 200 MULTIPLELINES
 
     BUTTON "$$DETAILS: OK" ID frmDetailsOK AT (3 BOTTOM@130 DETAILS_OK_BUTTON AUTO)
-    BUTTON "$$DETAILS: COPY URL" ID frmDetailsCopy AT (PREVRIGHT+5 PREVTOP DETAILS_COPY_BUTTON AUTO)
     BUTTON "$$DETAILS: CANCEL" ID frmDetailsCancel AT (PREVRIGHT+5 PREVTOP DETAILS_CANCEL_BUTTON AUTO)
+    BUTTON "$$DETAILS: COPY URL" ID frmDetailsCopy AT (PREVRIGHT+5 PREVTOP DETAILS_COPY_BUTTON AUTO)
 END
 
 STRING ID strDetailsHelp    "$$DETAILS: HELP"
