[jira] [Updated] (XERCESC-1800) Xerces-C++ is not 64-bit safe

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Updated] (XERCESC-1800) Xerces-C++ is not 64-bit safe

JIRA xerces-c-dev@xml.apache.org

     [ https://issues.apache.org/jira/browse/XERCESC-1800?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Scott Cantor updated XERCESC-1800:
----------------------------------
    Fix Version/s:     (was: 3.2.0)

> Xerces-C++ is not 64-bit safe
> -----------------------------
>
>                 Key: XERCESC-1800
>                 URL: https://issues.apache.org/jira/browse/XERCESC-1800
>             Project: Xerces-C++
>          Issue Type: Bug
>          Components: Build
>    Affects Versions: 3.1.0
>            Reporter: Boris Kolpackov
>            Priority: Critical
>             Fix For: 4.0.0
>
>
> There are a number of places in DOM where unsigned int and unsigned long are used for indexes and sizes. These should be changed to XMLSize_t. Here is the grep result:
> DOMDocument.hpp:                                                  const unsigned long lineNum,
> DOMDocument.hpp:                                                  const unsigned long columnNum) = 0;
> DOMDocumentTraversal.hpp:                                                   unsigned long    whatToShow,
> DOMDocumentTraversal.hpp:                                               unsigned long     whatToShow,
> DOMLocator.hpp:    virtual unsigned long getLineNumber() const = 0;
> DOMLocator.hpp:    virtual unsigned long getColumnNumber() const = 0;
> DOMLSParserFilter.hpp:    virtual unsigned long getWhatToShow() const = 0;
> DOMLSSerializerFilter.hpp:    virtual unsigned long getWhatToShow() const =0;
> DOMLSSerializerFilter.hpp:    //   unsigned long fWhatToShow;
> DOMNodeIterator.hpp:    virtual unsigned long      getWhatToShow() = 0;
> DOMTreeWalker.hpp:    virtual unsigned long     getWhatToShow()= 0;
> DOMTypeInfo.hpp:    virtual bool isDerivedFrom(const XMLCh* typeNamespaceArg, const XMLCh* typeNameArg, unsigned long derivationMethod) const = 0;
> DOMXPathResult.hpp:     virtual unsigned long getSnapshotLength() const = 0;
> DOMXPathResult.hpp:     * @param index of type unsigned long - Index into the snapshot collection.
> DOMXPathResult.hpp:     virtual const DOMNode* snapshotItem(unsigned long index) const = 0;
> DOMImplementationList.hpp:    virtual DOMImplementation *item(unsigned int index) const = 0;
> DOMImplementationList.hpp:    virtual unsigned int getLength() const = 0;
> DOMLSParser.hpp:    virtual const XMLCh* getURIText(unsigned int uriId) const = 0;
> DOMNamedNodeMap.hpp:    virtual DOMNode     *item(unsigned int index) const = 0;
> DOMNamedNodeMap.hpp:    virtual unsigned int getLength() const = 0;
> DOMNodeList.hpp:    virtual DOMNode  *item(unsigned int index) const = 0;
> DOMNodeList.hpp:    virtual unsigned int getLength() const = 0;
> DOMStringList.hpp:    virtual const XMLCh *item(unsigned int index) const = 0;
> DOMStringList.hpp:    virtual unsigned int getLength() const = 0;
> Ideally, we should do such an audit of the entire codebase.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]