Check if InitGoogleLogging is not called twice.


git-svn-id: https://google-glog.googlecode.com/svn/trunk@47 eb4d4688-79bd-11dd-afb4-1d65580434c0
diff --git a/src/utilities.cc b/src/utilities.cc
index 3efe779..7769634 100644
--- a/src/utilities.cc
+++ b/src/utilities.cc
@@ -309,6 +309,8 @@
 }  // namespace glog_internal_namespace_
 
 void InitGoogleLogging(const char* argv0) {
+  CHECK(!IsGoogleLoggingInitialized())
+      << "You called InitGoogleLogging() twice!";
   const char* slash = strrchr(argv0, '/');
 #ifdef OS_WINDOWS
   if (!slash)  slash = strrchr(argv0, '\\');
diff --git a/src/utilities_unittest.cc b/src/utilities_unittest.cc
index a2fb31b..7b79619 100644
--- a/src/utilities_unittest.cc
+++ b/src/utilities_unittest.cc
@@ -35,13 +35,17 @@
 
 using namespace GOOGLE_NAMESPACE;
 
-TEST(sync_val_compare_and_swap, utilities) {
+TEST(utilities, sync_val_compare_and_swap) {
   bool now_entering = false;
   EXPECT_FALSE(sync_val_compare_and_swap(&now_entering, false, true));
   EXPECT_TRUE(sync_val_compare_and_swap(&now_entering, false, true));
   EXPECT_TRUE(sync_val_compare_and_swap(&now_entering, false, true));
 }
 
+TEST(utilities, InitGoogleLoggingDeathTest) {
+  ASSERT_DEATH(InitGoogleLogging("foobar"), "");
+}
+
 int main(int argc, char **argv) {
   InitGoogleLogging(argv[0]);
   InitGoogleTest(&argc, argv);