GPT fdisk 0.8.3 release; minor bug fixes & feature changes.
diff --git a/NEWS b/NEWS
index 4a9c09d..290e9b6 100644
--- a/NEWS
+++ b/NEWS
@@ -1,8 +1,14 @@
-0.8.3 (?/??/2012):
+0.8.3 (3/23/2012):
 ------------------
 
-- Fixed bug that caused creation of >2TiB partitions to be truncated in
-  sgdisk.
+- Fixed compilation problem on GCC 4.7.
+
+- Improved handling of Ctrl+D on some systems.
+
+- Added disk's name to message stating that a disk write was successful.
+
+- Fixed bug that caused creation of >2TiB partitions on 32-bit systems to
+  be truncated in sgdisk.
 
 0.8.2 (1/22/2012):
 ------------------
diff --git a/basicmbr.cc b/basicmbr.cc
index 23fc219..fd5f30a 100644
--- a/basicmbr.cc
+++ b/basicmbr.cc
@@ -1532,6 +1532,7 @@
       cout << prompt;
       switch (ReadString()[0]) {
          case '\0':
+            goOn = !cin.eof();
             break;
          case 'a': case 'A':
             num = GetNumber(1, MAX_MBR_PARTS, 1, "Toggle active flag for partition: ") - 1;
diff --git a/cgdisk.8 b/cgdisk.8
index 7aae559..1ec7480 100644
--- a/cgdisk.8
+++ b/cgdisk.8
@@ -1,6 +1,6 @@
 .\" Copyright 2011, 2012 Roderick W. Smith (rodsmith@rodsbooks.com)
 .\" May be distributed under the GNU General Public License
-.TH "CGDISK" "8" "0.8.2" "Roderick W. Smith" "GPT fdisk Manual"
+.TH "CGDISK" "8" "0.8.3" "Roderick W. Smith" "GPT fdisk Manual"
 .SH "NAME"
 cgdisk \- Curses-based GUID partition table (GPT) manipulator
 .SH "SYNOPSIS"
@@ -268,7 +268,7 @@
 
 .SH "BUGS"
 
-As of January 2012 (version 0.8.2), \fBcgdisk\fR should be considered
+As of March 2012 (version 0.8.3), \fBcgdisk\fR should be considered
 beta software. Although the underlying partition manipulation code is much
 older, the \fBcgdisk\fR ncurses user interface is brand new with GPT fdisk
 version 0.8.0. Known bugs and limitations include:
diff --git a/current.spec b/current.spec
index 5d9ed33..42af3fb 100644
--- a/current.spec
+++ b/current.spec
@@ -1,11 +1,11 @@
 Summary: GPT partitioning and MBR repair software
 Name: gptfdisk
-Version: 0.8.2
+Version: 0.8.3
 Release: 1%{?dist}
 License: GPLv2
 URL: http://www.rodsbooks.com/gdisk
 Group: Applications/System
-Source: http://www.rodsbooks.com/gdisk/gptfdisk-0.8.2.tar.gz
+Source: http://www.rodsbooks.com/gdisk/gptfdisk-0.8.3.tar.gz
 BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
 
 %description
@@ -80,5 +80,5 @@
 
 
 %changelog
-* Sun Jan 22 2012 R Smith <rodsmith@rodsbooks.com> - 0.8.2
-- Created spec file for 0.8.2 release
+* Fri Mar 23 2012 R Smith <rodsmith@rodsbooks.com> - 0.8.3
+- Created spec file for 0.8.3 release
diff --git a/diskio-unix.cc b/diskio-unix.cc
index 3735b9f..0bfceef 100644
--- a/diskio-unix.cc
+++ b/diskio-unix.cc
@@ -22,6 +22,7 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <sys/stat.h>
+#include <unistd.h>
 
 #ifdef __linux__
 #include "linux/hdreg.h"
diff --git a/diskio-windows.cc b/diskio-windows.cc
index af191a8..3d180d4 100644
--- a/diskio-windows.cc
+++ b/diskio-windows.cc
@@ -238,7 +238,7 @@
          cerr << "Unable to allocate memory in DiskIO::Read()! Terminating!\n";
          exit(1);
       } // if
-      
+
       // Read the data into temporary space, then copy it to buffer
       ReadFile(fd, tempSpace, numBlocks * blockSize, &retval, NULL);
       for (i = 0; i < numBytes; i++) {
diff --git a/fixparts.8 b/fixparts.8
index a059b41..5aa5328 100644
--- a/fixparts.8
+++ b/fixparts.8
@@ -1,6 +1,6 @@
 .\" Copyright 2011, 2012 Roderick W. Smith (rodsmith@rodsbooks.com)
 .\" May be distributed under the GNU General Public License
-.TH "FIXPARTS" "8" "0.8.2" "Roderick W. Smith" "FixParts Manual"
+.TH "FIXPARTS" "8" "0.8.3" "Roderick W. Smith" "FixParts Manual"
 .SH "NAME"
 fixparts \- MBR partition table repair utility
 .SH "SYNOPSIS"
@@ -202,7 +202,7 @@
 .PP 
 
 .SH "BUGS"
-As of September 2012 (version 0.8.2), \fBfixparts\fR
+As of March 2012 (version 0.8.3), \fBfixparts\fR
 should be considered beta software. Known bugs and limitations include:
 
 .TP 
diff --git a/gdisk.8 b/gdisk.8
index dcaa6a7..1447af1 100644
--- a/gdisk.8
+++ b/gdisk.8
@@ -1,6 +1,6 @@
 .\" Copyright 2011, 2012 Roderick W. Smith (rodsmith@rodsbooks.com)
 .\" May be distributed under the GNU General Public License
-.TH "GDISK" "8" "0.8.2" "Roderick W. Smith" "GPT fdisk Manual"
+.TH "GDISK" "8" "0.8.3" "Roderick W. Smith" "GPT fdisk Manual"
 .SH "NAME"
 gdisk \- Interactive GUID partition table (GPT) manipulator
 .SH "SYNOPSIS"
@@ -561,7 +561,7 @@
 usually bypasses the prompt entirely.
 
 .SH "BUGS"
-As of January 2012 (version 0.8.2), \fBgdisk\fR
+As of March 2012 (version 0.8.3), \fBgdisk\fR
 should be considered beta software. Known bugs and limitations include:
 
 .TP 
diff --git a/gdisk_test.sh b/gdisk_test.sh
index 216b310..e567d4c 100755
--- a/gdisk_test.sh
+++ b/gdisk_test.sh
@@ -338,6 +338,15 @@
 	echo ""
 }
 
+#####################################
+# Test stdin EOF
+#####################################
+eof_stdin() {
+	$SGDISK_BIN $TEMP_DISK << EOF
+^D
+EOF
+	pretty_print "SUCCESS" "EOF successfully exit gdisk"
+}
 
 ###################################
 # Main
@@ -369,6 +378,7 @@
 	restore_table         # only with gdisk
 	change_disk_uid       "$binary"
 	wipe_table            "$binary"
+	eof_stdin             # only with gdisk
 done
 
 # remove temp files
diff --git a/gpt.cc b/gpt.cc
index 823f32f..f83d72e 100644
--- a/gpt.cc
+++ b/gpt.cc
@@ -1031,7 +1031,7 @@
            << "PARTITIONS!!\n\nDo you want to proceed? ";
       answer = GetYN();
       if (answer == 'Y') {
-         cout << "OK; writing new GUID partition table (GPT).\n";
+         cout << "OK; writing new GUID partition table (GPT) to " << myDisk.GetName() << ".\n";
       } else {
          allOK = 0;
       } // if/else
diff --git a/gpttext.cc b/gpttext.cc
index 433332f..2f30356 100644
--- a/gpttext.cc
+++ b/gpttext.cc
@@ -514,6 +514,7 @@
       cout << "\nCommand (? for help): ";
       switch (ReadString()[0]) {
          case '\0':
+            goOn = !cin.eof();
             break;
          case 'b': case 'B':
             cout << "Enter backup filename to save: ";
@@ -609,6 +610,7 @@
       cout << "\nRecovery/transformation command (? for help): ";
       switch (ReadString()[0]) {
          case '\0':
+            goOn = !cin.eof();
             break;
          case 'b': case 'B':
             RebuildMainHeader();
diff --git a/sgdisk.8 b/sgdisk.8
index d061921..ac2879f 100644
--- a/sgdisk.8
+++ b/sgdisk.8
@@ -1,6 +1,6 @@
 .\" Copyright 2011, 2012 Roderick W. Smith (rodsmith@rodsbooks.com)
 .\" May be distributed under the GNU General Public License
-.TH "SGDISK" "8" "0.8.2" "Roderick W. Smith" "GPT fdisk Manual"
+.TH "SGDISK" "8" "0.8.3" "Roderick W. Smith" "GPT fdisk Manual"
 .SH "NAME"
 sgdisk \- Command\-line GUID partition table (GPT) manipulator for Linux and Unix
 .SH "SYNOPSIS"
@@ -485,7 +485,7 @@
 Disk replication operation (-R) failed
 
 .SH "BUGS"
-As of January 2012 (version 0.8.2), \fBsgdisk\fR
+As of March 2012 (version 0.8.3), \fBsgdisk\fR
 should be considered beta software. Known bugs and limitations include:
 
 .TP 
diff --git a/support.h b/support.h
index 1a16057..934908c 100644
--- a/support.h
+++ b/support.h
@@ -8,7 +8,7 @@
 #ifndef __GPTSUPPORT
 #define __GPTSUPPORT
 
-#define GPTFDISK_VERSION "0.8.2.1"
+#define GPTFDISK_VERSION "0.8.3"
 
 #if defined (__FreeBSD__) || defined (__FreeBSD_kernel__) || defined (__APPLE__)
 // Darwin (Mac OS) & FreeBSD: disk IOCTLs are different, and there is no lseek64