1//
2// "$Id: ppdc-string.cxx 3901 2012-09-07 02:50:51Z msweet $"
3//
4//   Shared string class for the CUPS PPD Compiler.
5//
6//   Copyright 2007-2012 by Apple Inc.
7//   Copyright 2002-2005 by Easy Software Products.
8//
9//   These coded instructions, statements, and computer programs are the
10//   property of Apple Inc. and are protected by Federal copyright
11//   law.  Distribution and use rights are outlined in the file "LICENSE.txt"
12//   which should have been included with this file.  If this file is
13//   file is missing or damaged, see the license at "http://www.cups.org/".
14//
15// Contents:
16//
17//   ppdcString::ppdcString()  - Create a shared string.
18//   ppdcString::~ppdcString() - Destroy a shared string.
19//
20
21//
22// Include necessary headers...
23//
24
25#include "ppdc-private.h"
26
27
28//
29// 'ppdcString::ppdcString()' - Create a shared string.
30//
31
32ppdcString::ppdcString(const char *v)	// I - String
33  : ppdcShared()
34{
35  PPDC_NEWVAL(v);
36
37  if (v)
38  {
39    size_t vlen = strlen(v);
40
41    value = new char[vlen + 1];
42    memcpy(value, v, vlen + 1);
43  }
44  else
45    value = 0;
46}
47
48
49//
50// 'ppdcString::~ppdcString()' - Destroy a shared string.
51//
52
53ppdcString::~ppdcString()
54{
55  PPDC_DELETEVAL(value);
56
57  if (value)
58    delete[] value;
59}
60
61
62//
63// End of "$Id: ppdc-string.cxx 3901 2012-09-07 02:50:51Z msweet $".
64//
65