Differences From Artifact [bdd3d4d83c822b4b]:
- File        
src/output.d
- 2012-07-16 06:32:03 - part of checkin [1b261bd13b] on branch trunk - Run Wind and Forest both and take better. (user: kinaba) [annotate]
 
To Artifact [ac9f211f019469de]:
- File        
src/output.d
- 2013-03-16 01:15:25 - part of checkin [d95246eada] on branch trunk - Make it build on dmd 2.062. (user: kinaba) [annotate]
 
   50          string log;                                                                   50          string log;
   51          long[] score_log;                                                             51          long[] score_log;
   52          bool   flushed;                                                               52          bool   flushed;
   53                                                                                        53  
   54          string s_log;                                                                 54          string s_log;
   55          long[] s_score_log;                                                           55          long[] s_score_log;
   56                                                                                        56  
   57          void flush()                                                             |    57          void flush() nothrow
   58          {                                                                             58          {
   59                  if(flushed)                                                           59                  if(flushed)
   60                          return;                                                       60                          return;
   61                                                                                        61  
   62                  Tuple!(long, int, immutable(char)*) cand;                             62                  Tuple!(long, int, immutable(char)*) cand;
   63                  cand[0] = long.min;                                                   63                  cand[0] = long.min;
   64                                                                                        64  
................................................................................................................................................................................
   77  private:                                                                              77  private:
   78          static __gshared GuardedOutput g_output;                                      78          static __gshared GuardedOutput g_output;
   79                                                                                        79  
   80          void setup_sigint_handling()                                                  80          void setup_sigint_handling()
   81          {                                                                             81          {
   82                  assert(g_output is null);                                             82                  assert(g_output is null);
   83                  g_output = this;                                                      83                  g_output = this;
   84                  extern(C) static void catch_sigint(int) { g_output.flush(); appl |    84                  extern(C) nothrow @system static void catch_sigint(int) { g_outp
   85                  core.stdc.signal.signal(SIGINT, &catch_sigint);                       85                  core.stdc.signal.signal(SIGINT, &catch_sigint);
   86          }                                                                             86          }
   87  }                                                                                     87  }