diff --git a/ebml/EbmlCrc32.h b/ebml/EbmlCrc32.h index 9e3a3dc..f34a385 100644 --- a/ebml/EbmlCrc32.h +++ b/ebml/EbmlCrc32.h @@ -57,7 +57,7 @@ const uint32 CRC32_NEGL = 0xffffffffL; DECLARE_EBML_BINARY(EbmlCrc32) public: EbmlCrc32(const EbmlCrc32 & ElementToClone); - bool ValidateSize() const {return (GetSize() == 4);} + virtual bool ValidateSize() const {return (GetSize() == 4);} filepos_t RenderData(IOCallback & output, bool bForceRender, bool bKeepIntact = false); filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA); // filepos_t UpdateSize(bool bKeepIntact = false); diff --git a/ebml/EbmlDate.h b/ebml/EbmlDate.h index 13514e8..2360866 100644 --- a/ebml/EbmlDate.h +++ b/ebml/EbmlDate.h @@ -60,7 +60,7 @@ class EBML_DLL_API EbmlDate : public EbmlElement { */ int32 GetEpochDate() const {return int32(myDate/1000000000 + UnixEpochDelay);} - bool ValidateSize() const {return ((GetSize() == 8) || (GetSize() == 0));} + virtual bool ValidateSize() const {return ((GetSize() == 8) || (GetSize() == 0));} /*! \note no Default date handled diff --git a/ebml/EbmlFloat.h b/ebml/EbmlFloat.h index 2f990a9..e4b86e9 100644 --- a/ebml/EbmlFloat.h +++ b/ebml/EbmlFloat.h @@ -56,7 +56,7 @@ class EBML_DLL_API EbmlFloat : public EbmlElement { EbmlFloat(const double DefaultValue, const Precision prec = FLOAT_32); EbmlFloat(const EbmlFloat & ElementToClone); - bool ValidateSize() const + virtual bool ValidateSize() const { return (GetSize() == 4 || GetSize() == 8); } diff --git a/ebml/EbmlMaster.h b/ebml/EbmlMaster.h index 856c1d5..bb83ccb 100644 --- a/ebml/EbmlMaster.h +++ b/ebml/EbmlMaster.h @@ -57,7 +57,7 @@ class EBML_DLL_API EbmlMaster : public EbmlElement { public: EbmlMaster(const EbmlSemanticContext & aContext, bool bSizeIsKnown = true); EbmlMaster(const EbmlMaster & ElementToClone); - bool ValidateSize() const {return true;} + virtual bool ValidateSize() const {return true;} /*! \warning be carefull to clear the memory allocated in the ElementList elsewhere */ diff --git a/ebml/EbmlSInteger.h b/ebml/EbmlSInteger.h index 810e2bb..f65ddc1 100644 --- a/ebml/EbmlSInteger.h +++ b/ebml/EbmlSInteger.h @@ -64,7 +64,7 @@ class EBML_DLL_API EbmlSInteger : public EbmlElement { */ virtual void SetDefaultSize(uint64 nDefaultSize = DEFAULT_INT_SIZE) {SetSize_(nDefaultSize);} - bool ValidateSize() const {return (GetSize() <= 8);} + virtual bool ValidateSize() const {return (GetSize() <= 8);} filepos_t RenderData(IOCallback & output, bool bForceRender, bool bKeepIntact = false); filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA); filepos_t UpdateSize(bool bKeepIntact = false, bool bForceRender = false); diff --git a/ebml/EbmlString.h b/ebml/EbmlString.h index 69a2874..2b322f6 100644 --- a/ebml/EbmlString.h +++ b/ebml/EbmlString.h @@ -55,7 +55,7 @@ class EBML_DLL_API EbmlString : public EbmlElement { virtual ~EbmlString() {} - bool ValidateSize() const {return true;} // any size is possible + virtual bool ValidateSize() const {return true;} // any size is possible filepos_t RenderData(IOCallback & output, bool bForceRender, bool bKeepIntact = false); filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA); filepos_t UpdateSize(bool bKeepIntact = false, bool bForceRender = false); diff --git a/ebml/EbmlUInteger.h b/ebml/EbmlUInteger.h index b669405..dc6ac93 100644 --- a/ebml/EbmlUInteger.h +++ b/ebml/EbmlUInteger.h @@ -62,7 +62,7 @@ class EBML_DLL_API EbmlUInteger : public EbmlElement { */ virtual void SetDefaultSize(uint64 nDefaultSize = DEFAULT_UINT_SIZE) {SetSize_(nDefaultSize);} - bool ValidateSize() const {return (GetSize() <= 8);} + virtual bool ValidateSize() const {return (GetSize() <= 8);} filepos_t RenderData(IOCallback & output, bool bForceRender, bool bKeepIntact = false); filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA); filepos_t UpdateSize(bool bKeepIntact = false, bool bForceRender = false); diff --git a/ebml/EbmlUnicodeString.h b/ebml/EbmlUnicodeString.h index 8fa066f..acb12d6 100644 --- a/ebml/EbmlUnicodeString.h +++ b/ebml/EbmlUnicodeString.h @@ -104,7 +104,7 @@ class EBML_DLL_API EbmlUnicodeString : public EbmlElement { virtual ~EbmlUnicodeString() {} - bool ValidateSize() const {return true;} // any size is possible + virtual bool ValidateSize() const {return true;} // any size is possible filepos_t RenderData(IOCallback & output, bool bForceRender, bool bKeepIntact = false); filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA); filepos_t UpdateSize(bool bKeepIntact = false, bool bForceRender = false);