~d-ci/libmemcached/pushtest

« back to all changes in this revision

Viewing changes to libtest/result.cc

  • Committer: Continuous Integration
  • Date: 2013-01-11 08:26:12 UTC
  • mfrom: (1093.2.1 workspace)
  • Revision ID: ci@tangent.org-20130111082612-x0lmcxb58t9g1mpo
Merge lp:~tangent-org/libmemcached/1.2-build/ Build: jenkins-Libmemcached-195

Show diffs side-by-side

added added

removed removed

Lines of Context:
52
52
{
53
53
}
54
54
 
55
 
__skipped::__skipped(const char *file_arg, int line_arg, const char *func_arg):
56
 
  __test_result(file_arg, line_arg, func_arg)
57
 
{
 
55
__skipped::__skipped(const char *file_arg, int line_arg, const char *func_arg, ...):
 
56
  __test_result(file_arg, line_arg, func_arg),
 
57
  _error_message(NULL),
 
58
  _error_message_size(0)
 
59
{
 
60
  va_list args;
 
61
  va_start(args, func_arg);
 
62
  const char *format= va_arg(args, const char *);
 
63
  _error_message_size= vasprintf(&_error_message, format, args);
 
64
  assert(_error_message_size != -1);
 
65
  if (_error_message_size > 0)
 
66
  {
 
67
    _error_message_size++;
 
68
  }
 
69
  va_end(args);
 
70
}
 
71
 
 
72
__skipped::__skipped( const __skipped& other ) :
 
73
  __test_result(other),
 
74
  _error_message_size(other._error_message_size)
 
75
{
 
76
  _error_message= (char*) malloc(_error_message_size);
 
77
  if (_error_message)
 
78
  {
 
79
    memcpy(_error_message, other._error_message, _error_message_size);
 
80
  }
 
81
  else
 
82
  {
 
83
    _error_message_size= -1;
 
84
  }
 
85
}
 
86
 
 
87
__skipped::~__skipped() throw()
 
88
{
 
89
  if ((_error_message_size > 0) and _error_message)
 
90
  {
 
91
    free(_error_message);
 
92
    _error_message= NULL;
 
93
  }
58
94
}
59
95
 
60
96
__failure::__failure(const char *file_arg, int line_arg, const char *func_arg, ...) :