Changeset 851efc0 in tol


Ignore:
Timestamp:
Mar 26, 2012, 10:06:17 AM (15 years ago)
Author:
Víctor de Buen <vdebuen@…>
Branches:
1941-docker-image-to-test, devel, master
Children:
4861493
Parents:
bb29eda
Message:

Fixes #1489 in 3.2

git-svn-id: ​https://www.tol-project.org/svn/tolp/trunk@4418 be4846ae-f051-483a-831f-b64e7d08527f

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tol/btol/bgrammar/nameblock.cpp

    rbb29eda r851efc0  
    225225        BUserCode* uCode = UCode(obj);
    226226        BOperator* opr   = GetOperator(uCode);
    227         if ( opr->NameBlock() && opr->NameBlock() == this ) {
     227        if ( opr && opr->NameBlock() && opr->NameBlock() == this ) {
    228228          opr->PutNameBlock( NULL );
    229229        }
    … …  
    567567      {
    568568        mbr = memberOwner.member_[n]->member_;
    569         if(mbr->method_)
     569        if(mbr && mbr->method_)
    570570        {
    571571          mbr->method_->PutNameBlock(NULL);
    … …  
    573573          {
    574574            BUserCode* uCode = UCode(mbr->method_);
    575             uCode->Contens().Operator()->PutNameBlock(NULL);
     575            BOperator* opr = uCode->Contens().Operator();
     576            if(opr) { opr->PutNameBlock(NULL); }
    576577          }
    577578        }
    578         if(mbr->static_)
     579        if(mbr && mbr->static_)
    579580        {
    580581          mbr->static_->PutNameBlock(NULL);
    … …  
    582583          {
    583584            BUserCode* uCode = UCode(mbr->static_);
    584             uCode->Contens().Operator()->PutNameBlock(NULL);
     585            BOperator* opr = uCode->Contens().Operator();
     586            if(opr) { opr->PutNameBlock(NULL); }
    585587          }
    586588        }
    … …  
    932934      {
    933935        BUserCode* uCode = UCode(met);
    934         uCode->Contens().Operator()->PutNameBlock(this);
     936        BOperator* opr = uCode->Contens().Operator();
     937        if(opr) { opr->PutNameBlock(this); }
    935938      }
    936939      result = met;
    … …  
    965968      {
    966969        BUserCode* uCode = UCode(met);
    967         uCode->Contens().Operator()->PutNameBlock(this);
     970        BOperator* opr = uCode->Contens().Operator();
     971        if(opr) { opr->PutNameBlock(this); }
    968972      }
    969973      result = met;
    … …  
    11421146      {
    11431147        BUserCode* uCode = UCode(met);
    1144         uCode->Contens().Operator()->PutNameBlock(this);
     1148        BOperator* opr = uCode->Contens().Operator();
     1149        if(opr) { opr->PutNameBlock(this); }
    11451150      }
    11461151      result = met;
Note: See TracChangeset for help on using the changeset viewer.