commit: ugly hack to prevent prop leakage

From: Patrick Lam (plam@plam.lcs.mit.edu)
Date: Mon May 27 2002 - 15:53:56 EDT

  • Next message: Joaquín Cuenca Abela: "Re: Font, layout units et al."

    I just committed this ugly patch. It's so ugly that I'm mailing it
    to the list and hoping that someone has a better solution.

    pat

    Index: src/text/ptbl/xp/pt_PT_InsertSpan.cpp
    ===================================================================
    RCS file: /cvsroot/abi/src/text/ptbl/xp/pt_PT_InsertSpan.cpp,v
    retrieving revision 1.47
    diff -u -r1.47 pt_PT_InsertSpan.cpp
    --- src/text/ptbl/xp/pt_PT_InsertSpan.cpp 27 May 2002 18:53:00 -0000 1.47
    +++ src/text/ptbl/xp/pt_PT_InsertSpan.cpp 27 May 2002 19:53:16 -0000
    @@ -460,6 +460,32 @@
            PT_BlockOffset blockOffset = _computeBlockOffset(pfs,pf) + fragOffset;
            PX_ChangeRecord_Span * pcr = NULL;
     
    + const XML_Char * pFieldAttrs[8];
    + pFieldAttrs[0] = "type";
    + pFieldAttrs[1] = NULL;
    + pFieldAttrs[2] = "param";
    + pFieldAttrs[3] = NULL;
    + pFieldAttrs[4] = "name";
    + pFieldAttrs[5] = NULL;
    + pFieldAttrs[6] = NULL;
    + pFieldAttrs[7] = NULL;
    +
    + const PP_AttrProp * pAP = NULL;
    +
    + if (!getAttrProp(indexAP, &pAP))
    + return false;
    +
    + if (pAP->areAnyOfTheseNamesPresent(pFieldAttrs, NULL))
    + {
    + PP_AttrProp * pAPNew = pAP->cloneWithElimination(pFieldAttrs, NULL);
    + if (!pAPNew)
    + return false;
    + pAPNew->markReadOnly();
    +
    + if (!m_varset.addIfUniqueAP(pAPNew, &indexAP))
    + return false;
    + }
    +
            if (!_insertSpan(pf,bi,fragOffset,length,indexAP,pField))
                    goto Finish;



    This archive was generated by hypermail 2.1.4 : Mon May 27 2002 - 15:59:33 EDT