Possible fix for Ubuntu
authorBrian Aker <brian@tangent.org>
Thu, 7 Jul 2011 02:38:41 +0000 (19:38 -0700)
committerBrian Aker <brian@tangent.org>
Thu, 7 Jul 2011 02:38:41 +0000 (19:38 -0700)
libtest/memcached.cc
libtest/stream.h
libtest/test.cc

index c3f40fa8f8f1e03bee20713ec657ea24ec1688ad..2b49c6085a4a8cde7e7effdbd916c89ba82dfad2 100644 (file)
@@ -111,7 +111,8 @@ static bool cycle_server(server_st  *server)
 
 bool server_startup(server_startup_st *construct)
 {
-  Log;
+  Logn();
+
   if (getenv(((char *)"MEMCACHED_SERVERS")))
   {
     construct->server_list= getenv(((char *)"MEMCACHED_SERVERS"));
@@ -246,7 +247,7 @@ bool server_startup(server_startup_st *construct)
     construct->server_list= server_config_string;
   }
 
-  Log;
+  Logn();
 
   srandom((unsigned int)time(NULL));
 
index 3ad71b1fddbb528fd4bb4b4b878e06c87b52de0c..558b2790b53c3360a3a03ad1d3260d7c5ad2f62a 100644 (file)
@@ -97,14 +97,15 @@ template<template <class Ch, class Tr, class A> class OutputPolicy, class Ch = c
     int _line_number;
 
   public:
-    log(const char *filename, int line_number) :
-      _filename(filename),
-      _line_number(line_number)
+    log() :
+      _filename(NULL),
+      _line_number(0)
+    { }
+
+    void set_filename(const char *filename, int line_number)
     {
-      if (_filename)
-      {
-        arg << _filename << ":" << _line_number << " ";
-      }
+      _filename= filename;
+      _line_number= line_number;
     }
 
     ~log()
@@ -116,6 +117,11 @@ template<template <class Ch, class Tr, class A> class OutputPolicy, class Ch = c
     template<class T>
       log &operator<<(const T &x)
       {
+        if (_filename)
+        {
+          arg << __FILE__ << ":" << __LINE__ << " ";
+          _filename= NULL;
+        }
         arg << x;
         return *this;
       }
@@ -127,22 +133,21 @@ template<template <class Ch, class Tr, class A> class OutputPolicy, class Ch = c
 
 class cerr : public detail::log<detail::cerr> {
 public:
-  cerr(const char *filename, int line_number) :
-    log(filename, line_number)
-  { }
+  cerr(const char *filename, int line_number)
+  {
+    set_filename(filename, line_number);
+  }
 };
 
 class clog : public detail::log<detail::clog> {
 public:
-  clog(const char *filename, int line_number) :
-    log(filename, line_number)
+  clog(const char *, int)
   { }
 };
 
 class cout : public detail::log<detail::cout> {
 public:
-  cout(const char *filename, int line_number) :
-    log(filename, line_number)
+  cout(const char *, int)
   { }
 };
 
@@ -155,4 +160,6 @@ public:
 
 #define Log stream::clog(NULL, __LINE__)
 
+#define Logn() stream::clog(NULL, __LINE__) << " "
+
 } // namespace libtest
index 33353bd55cd29b4cabb6cff104641dc8a035b2bc..8beef356610b788bf4b5fc8bf825c7bb9ea8c6ed 100644 (file)
@@ -390,6 +390,8 @@ int main(int argc, char *argv[])
         Error << "Failed while running on_error()";
         break;
       }
+
+      Logn();
     }
 
     if (next->post and world->runner->post)
@@ -427,13 +429,10 @@ cleanup:
 
   stats_print(&stats);
 
-  Error << " ";
   void *retval;
   pthread_join(thread, &retval);
 
-  Error << " word";
   delete world;
-  Error << " after word";
 
   return stats.failed == 0 and __shutdown == SHUTDOWN_GRACEFUL ? EXIT_SUCCESS : EXIT_FAILURE;
 }