Changeset 1505bd in git


Ignore:
Timestamp:
May 13, 2019, 4:44:50 PM (5 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
493663662cc7fa3b704960e9bc976cd4e6fdcb2d
Parents:
d0ca0b8ae05c9cfcf2578b78e43825144b88299c
Message:
change iiCallLibProcM -> ii_CallLibProcM
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • Singular/iplib.cc

    rd0ca0b r1505bd  
    603603      omFreeBin((ADDRESS)hh, idrec_bin);
    604604    }
    605     else
    606     {
    607       WarnS("internal: lost ring in iiCallLib");
    608     }
    609605  }
    610606  currRingHdl=save_ringhdl;
     
    686682/// args: NULL terminated array of arguments
    687683/// arg_types: 0 terminated array of corresponding types
    688 void* iiCallLibProcM(const char*n, void **args, int* arg_types, BOOLEAN &err)
     684leftv ii_CallLibProcM(const char*n, void **args, int* arg_types, const ring R, BOOLEAN &err)
    689685{
    690686  idhdl h=ggetid(n);
     
    698694  idhdl save_ringhdl=currRingHdl;
    699695  ring save_ring=currRing;
     696  rChangeCurrRing(R);
    700697  iiCallLibProcBegin();
    701698  // argument:
     
    727724  if (err==FALSE)
    728725  {
    729     void*r=iiRETURNEXPR.data;
    730     iiRETURNEXPR.data=NULL;
    731     iiRETURNEXPR.CleanUp();
    732     return r;
     726    leftv h=(leftv)omAllocBin(sleftv_bin);
     727    memcpy(h,&iiRETURNEXPR,sizeof(sleftv));
     728    memset(&iiRETURNEXPR,0,sizeof(sleftv));
     729    return h;
    733730  }
    734731  return NULL;
  • Singular/ipshell.h

    rd0ca0b r1505bd  
    196196BOOLEAN iiMake_proc(idhdl pn, package pack, leftv sl);
    197197void* iiCallLibProc1(const char* n, void *arg, int arg_type, BOOLEAN &err);
    198 void* iiCallLibProcM(const char* n, void **args, int *arg_types, BOOLEAN &err);
     198leftv ii_CallLibProcM(const char* n, void **args, int *arg_types, const ring R, BOOLEAN &err);
    199199ideal ii_CallProcId2Id(const char* lib,const char* proc, ideal arg,const ring R);
    200200int ii_CallProcId2Int(const char* lib,const char* proc, ideal arg,const ring R);
  • kernel/ideals.cc

    rd0ca0b r1505bd  
    303303    void *args[]={temp,(void*)1,NULL};
    304304    int arg_t[]={MODUL_CMD,INT_CMD,0};
    305     temp1=(ideal)iiCallLibProcM("modStd",args,arg_t,err);
     305    leftv temp0=ii_CallLibProcM("modStd",args,arg_t,currRing,err);
     306    temp1=(ideal)temp0->data;
     307    omFreeBin((ADDRESS)temp0,sleftv_bin);
    306308    if (err)
    307309    {
     
    345347      void *args[]={temp,v,NULL};
    346348      int arg_t[]={MODUL_CMD,IDEAL_CMD,0};
    347       temp1=(ideal)iiCallLibProcM("satstd",args,arg_t,err);
     349      leftv temp0=ii_CallLibProcM("satstd",args,arg_t,currRing,err);
     350      temp1=(ideal)temp0->data;
     351      omFreeBin((ADDRESS)temp0, sleftv_bin);
    348352    }
    349353    if (err)
     
    655659    void *args[]={idCopy(h2),(void*)1,NULL};
    656660    int arg_t[]={MODUL_CMD,INT_CMD,0};
    657     h3=(ideal)iiCallLibProcM("modStd",args,arg_t,err);
     661    leftv temp0=ii_CallLibProcM("modStd",args,arg_t,currRing,err);
     662    h3=(ideal)temp0->data;
     663    omFreeBin((ADDRESS)temp0,sleftv_bin);
    658664    if (err)
    659665    {
     
    697703      void *args[]={idCopy(h2),v,NULL};
    698704      int arg_t[]={MODUL_CMD,IDEAL_CMD,0};
    699       h3=(ideal)iiCallLibProcM("satstd",args,arg_t,err);
     705      leftv temp0=ii_CallLibProcM("satstd",args,arg_t,currRing,err);
     706      h3=(ideal)temp0->data;
     707      omFreeBin((ADDRESS)temp0,sleftv_bin);
    700708    }
    701709    if (err)
     
    17571765    void *args[]={idCopy(h),(void*)1,NULL};
    17581766    int arg_t[]={IDEAL_CMD,INT_CMD,0};
    1759     hh=(ideal)iiCallLibProcM("modStd",args,arg_t,err);
     1767    leftv temp0=ii_CallLibProcM("modStd",args,arg_t,currRing,err);
     1768    hh=(ideal)temp0->data;
     1769    omFreeBin((ADDRESS)temp0,sleftv_bin);
    17601770    if (err)
    17611771    {
Note: See TracChangeset for help on using the changeset viewer.