Ejemplo n.º 1
0
static void
dlseterror_from_exception(volatile _INTRPT_Hndlr_Parms_T * excp)

{
    int i;
    Qmh_Rtvm_RTVM0300_t * imp;
    char * cp;
    _INTRPT_Hndlr_Parms_T * p;
    dlts_t * q;
    char rtvmbuf[30000];
    Qus_EC_t errinfo;

    p = (_INTRPT_Hndlr_Parms_T *) excp;
    errinfo.Bytes_Provided = 0;             /* Exception on error. */
    QMHRTVM(rtvmbuf, sizeof rtvmbuf, "RTVM0300", p->Msg_Id,
            "QCPFMSG   QSYS      ", p->Ex_Data, p->Msg_Data_Len,
            "*YES      ", "*NO       ", &errinfo);
    imp = offset_by(Qmh_Rtvm_RTVM0300_t, rtvmbuf, 0);

    if (!(dlflags & MULTIBUF))
        q = &static_buf;
    else if (!(q = (dlts_t *) pthread_getspecific(dlkey)))
        q = &static_buf;

    if (i = imp->Length_Message_Returned)
        cp = offset_by(char, imp, imp->Offset_Message_Returned);
    else if (i = imp->Length_Help_Returned)
 void Undo(CommandContext& context) override{
   offset_by(context.GetObjects(), m_topLeft);
 }
 void Do(CommandContext& context) override{
   DoRaster(context);
   offset_by(context.GetObjects(), -m_topLeft);
 }