Browse Source

xfile: fix read from uninitialized memory (see #554)

rdb 6 years ago
parent
commit
094458a8df

+ 1 - 1
pandatool/src/xfile/xFile.cxx

@@ -34,7 +34,7 @@ PT(XFile) XFile::_standard_templates;
  *
  *
  */
  */
 XFile::
 XFile::
-XFile(bool keep_names) : XFileNode(this, "") {
+XFile(bool keep_names) : XFileNode(this) {
   _major_version = 3;
   _major_version = 3;
   _minor_version = 2;
   _minor_version = 2;
   _format_type = FT_text;
   _format_type = FT_text;

+ 10 - 0
pandatool/src/xfile/xFileNode.I

@@ -11,6 +11,16 @@
  * @date 2004-10-03
  * @date 2004-10-03
  */
  */
 
 
+/**
+ *
+ */
+INLINE XFileNode::
+XFileNode(XFile *x_file) :
+  Namable(),
+  _x_file(x_file)
+{
+}
+
 /**
 /**
  *
  *
  */
  */

+ 3 - 0
pandatool/src/xfile/xFileNode.h

@@ -38,6 +38,9 @@ class Filename;
  */
  */
 class XFileNode : public TypedObject, public Namable,
 class XFileNode : public TypedObject, public Namable,
                   virtual public ReferenceCount {
                   virtual public ReferenceCount {
+protected:
+  INLINE XFileNode(XFile *x_file);
+
 public:
 public:
   XFileNode(XFile *x_file, const std::string &name);
   XFileNode(XFile *x_file, const std::string &name);
   virtual ~XFileNode();
   virtual ~XFileNode();