Commit a98e15935b748262cdaf4c74c63d52737eb57e76

Authored by perry.werneck@gmail.com
1 parent 96b4279c

Muitas atualizacoes enfileiradas derrubam o windows 7 com falha dentro da ntdll.dll

XtGlue.c
... ... @@ -502,9 +502,7 @@ static int DefaultProcessEvents(int block)
502 502 FD_ISSET(ip->source, &rfds))
503 503 {
504 504 #endif
505   - Trace("%s",__FUNCTION__);
506 505 (*ip->proc)(ip->session);
507   - Trace("%s",__FUNCTION__);
508 506 processed_any = True;
509 507 if (inputs_changed)
510 508 goto retry;
... ... @@ -513,9 +511,7 @@ static int DefaultProcessEvents(int block)
513 511 #if !defined(_WIN32)
514 512 if (((unsigned long)ip->condition & InputWriteMask) && FD_ISSET(ip->source, &wfds))
515 513 {
516   - Trace("%s",__FUNCTION__);
517 514 (*ip->proc)(ip->session);
518   - Trace("%s",__FUNCTION__);
519 515 processed_any = True;
520 516 if (inputs_changed)
521 517 goto retry;
... ... @@ -547,9 +543,7 @@ static int DefaultProcessEvents(int block)
547 543 #endif
548 544 timeouts = t->next;
549 545 t->in_play = True;
550   - Trace("%s",__FUNCTION__);
551 546 (*t->proc)(t->session);
552   - Trace("%s",__FUNCTION__);
553 547 processed_any = True;
554 548 Free(t);
555 549 } else
... ...
ctlr.c
... ... @@ -458,7 +458,6 @@ void ctlr_erase(H3270 *session, int alt)
458 458 CHECK_SESSION_HANDLE(session);
459 459  
460 460 kybd_inhibit(False);
461   -
462 461 ctlr_clear(session,True);
463 462 screen_erase(session);
464 463  
... ... @@ -486,6 +485,7 @@ void ctlr_erase(H3270 *session, int alt)
486 485 }
487 486  
488 487 session->screen_alt = alt;
  488 +
489 489 }
490 490  
491 491  
... ... @@ -2329,6 +2329,8 @@ ctlr_clear(H3270 *session, Boolean can_snap)
2329 2329 #endif /*]*/
2330 2330  
2331 2331 /* Clear the screen. */
  2332 + trace("%p",session->ea_buf);
  2333 +
2332 2334 (void) memset((char *)session->ea_buf, 0, session->rows*session->cols*sizeof(struct ea));
2333 2335 cursor_move(&h3270,0);
2334 2336 session->buffer_addr = 0;
... ... @@ -2341,8 +2343,7 @@ ctlr_clear(H3270 *session, Boolean can_snap)
2341 2343 sscp_start = 0;
2342 2344  
2343 2345 // ALL_CHANGED;
2344   - screen_erase(session);
2345   -
  2346 + session->erase(session);
2346 2347 }
2347 2348  
2348 2349 /*
... ...
ft.c
... ... @@ -377,8 +377,6 @@ void ft_complete(H3270FT *session, const char *errmsg)
377 377 ((double)(t1.tv_sec - starting_time.tv_sec) +
378 378 (double)(t1.tv_usec - starting_time.tv_usec) / 1.0e6);
379 379  
380   - trace("%s",__FUNCTION__);
381   -
382 380 // Close the local file.
383 381 if(session->ft_local_file)
384 382 {
... ... @@ -420,8 +418,6 @@ void ft_update_length(H3270FT *session)
420 418 (double)(t1.tv_usec - starting_time.tv_usec) / 1.0e6);
421 419 }
422 420  
423   - Trace("%s",__FUNCTION__);
424   -
425 421 session->update(session,ft_length,kbytes_sec);
426 422  
427 423 }
... ... @@ -429,8 +425,6 @@ void ft_update_length(H3270FT *session)
429 425 // Process a transfer acknowledgement.
430 426 void ft_running(H3270FT *h, Boolean is_cut)
431 427 {
432   - trace("%s",__FUNCTION__);
433   -
434 428 CHECK_FT_HANDLE(h);
435 429  
436 430 ft_is_cut = is_cut;
... ... @@ -450,8 +444,6 @@ void ft_running(H3270FT *h, Boolean is_cut)
450 444 // Process a protocol-generated abort.
451 445 void ft_aborting(H3270FT *h)
452 446 {
453   -// Trace("%s",__FUNCTION__);
454   -
455 447 CHECK_FT_HANDLE(h);
456 448  
457 449 if (h->state == FT_RUNNING || h->state == FT_ABORT_WAIT)
... ...
glue.c
... ... @@ -244,9 +244,11 @@ static void initialize(void)
244 244 #endif
245 245 */
246 246  
247   -#if defined(C3270) && defined(_WIN32) /*[*/
  247 +/*
  248 +#if defined(C3270) && defined(_WIN32)
248 249 appres.highlight_underline = True;
249   -#endif /*]*/
  250 +#endif
  251 +*/
250 252  
251 253 /*
252 254 #if defined(C3270) && !defined(_WIN32) && !defined(LIB3270)
... ... @@ -407,9 +409,9 @@ static struct {
407 409 #if defined(X3270_SCRIPT) /*[*/
408 410 { ResPluginCommand, offset(plugin_command), XRM_STRING },
409 411 #endif /*]*/
410   -#if defined(C3270) && defined(_WIN32) /*[*/
411   - { ResHighlightUnderline, offset(highlight_underline), XRM_BOOLEAN },
412   -#endif /*]*/
  412 +//#if defined(C3270) && defined(_WIN32)
  413 +// { ResHighlightUnderline, offset(highlight_underline), XRM_BOOLEAN },
  414 +//#endif
413 415 #if defined(C3270) && defined(X3270_SCRIPT) /*[*/
414 416 { ResIdleCommand,offset(idle_command), XRM_STRING },
415 417 { ResIdleCommandEnabled,offset(idle_command_enabled), XRM_BOOLEAN },
... ...
host.c
... ... @@ -738,23 +738,28 @@ void host_disconnected(H3270 *session)
738 738 }
739 739  
740 740 /* Register a function interested in a state change. */
741   -LIB3270_EXPORT void lib3270_register_schange(H3270 *h,LIB3270_STATE_CHANGE tx, void (*func)(H3270 *, int, void *),void *data)
  741 +LIB3270_EXPORT void lib3270_register_schange(H3270 *h, LIB3270_STATE_CHANGE tx, void (*func)(H3270 *, int, void *),void *data)
742 742 {
743 743 struct lib3270_state_callback *st;
744 744  
745 745 CHECK_SESSION_HANDLE(h);
746 746  
747   - st = (struct lib3270_state_callback *)Malloc(sizeof(*st));
748   -
  747 + st = (struct lib3270_state_callback *) lib3270_malloc(sizeof(struct lib3270_state_callback));
749 748 st->func = func;
750   - st->next = (struct lib3270_state_callback *)NULL;
751 749  
752   - if (h->st_last[tx] != (struct lib3270_state_callback *)NULL)
  750 + if (h->st_last[tx])
753 751 h->st_last[tx]->next = st;
754 752 else
755 753 h->st_callbacks[tx] = st;
  754 +
756 755 h->st_last[tx] = st;
757 756  
  757 + #warning AQUI
  758 + if(tx == LIB3270_STATE_CONNECT)
  759 + {
  760 + trace("%s st=%p func=%p",__FUNCTION__,st,func);
  761 + }
  762 +
758 763 }
759 764  
760 765 /* Signal a state change. */
... ... @@ -782,18 +787,22 @@ void lib3270_st_changed(H3270 *h, LIB3270_STATE tx, int mode)
782 787  
783 788 CHECK_SESSION_HANDLE(h);
784 789  
785   - trace("%s is %d",state_name[tx],mode);
  790 + trace("%s is %d on session %p",state_name[tx],mode,h);
786 791  
787   - for (st = h->st_callbacks[tx];st != (struct lib3270_state_callback *)NULL;st = st->next)
  792 + for (st = h->st_callbacks[tx];st;st = st->next)
788 793 {
  794 + trace("st=%p func=%p",st,st->func);
789 795 st->func(h,mode,st->data);
790 796 }
  797 +
  798 + trace("%s ends",__FUNCTION__);
791 799 }
792 800  
793 801 LIB3270_EXPORT const char * lib3270_set_host(H3270 *h, const char *n)
794 802 {
795 803 CHECK_SESSION_HANDLE(h);
796 804  
  805 + #warning AQUI
797 806 Trace("%s: %p",__FUNCTION__,n);
798 807  
799 808 if(n && n != h->full_current_host)
... ...
kybd.c
... ... @@ -411,6 +411,7 @@ static void kybd_connect(H3270 *session, int connected, void *dunno)
411 411 {
412 412 if (kybdlock & KL_DEFERRED_UNLOCK)
413 413 RemoveTimeOut(unlock_id);
  414 +
414 415 kybdlock_clr(-1, "kybd_connect");
415 416  
416 417 if (connected) {
... ... @@ -580,12 +581,9 @@ LIB3270_FKEY_ACTION( pakey )
580 581  
581 582 LIB3270_ACTION(break)
582 583 {
583   -
584 584 if (!IN_3270)
585 585 return 0;
586 586  
587   - Trace("%s",__FUNCTION__);
588   -
589 587 net_break();
590 588  
591 589 return 0;
... ... @@ -599,8 +597,6 @@ LIB3270_ACTION(attn)
599 597 if (!IN_3270)
600 598 return 0;
601 599  
602   - Trace("%s",__FUNCTION__);
603   -
604 600 net_interrupt();
605 601  
606 602 return 0;
... ... @@ -1466,8 +1462,6 @@ do_reset(Boolean explicit)
1466 1462 * a half-composed key, simply flush it.
1467 1463 */
1468 1464  
1469   - Trace("%s",__FUNCTION__);
1470   -
1471 1465 if (explicit
1472 1466 #if defined(X3270_FT) /*[*/
1473 1467 || lib3270_get_ft_state(&h3270) != LIB3270_FT_STATE_NONE
... ... @@ -2316,7 +2310,6 @@ LIB3270_KEY_ACTION( enter )
2316 2310  
2317 2311 LIB3270_ACTION( sysreq )
2318 2312 {
2319   - Trace("%s",__FUNCTION__);
2320 2313 // reset_idle_timer();
2321 2314 if (IN_ANSI)
2322 2315 return 0;
... ...
screen.c
... ... @@ -104,7 +104,9 @@ static void addch(H3270 *session, int baddr, unsigned char c, unsigned short att
104 104 /* Converted char has changed, update it */
105 105 session->text[baddr].chr = c;
106 106 session->text[baddr].attr = attr;
  107 +
107 108 session->update(session,baddr,c,attr,baddr == session->cursor_addr);
  109 +
108 110 }
109 111  
110 112 LIB3270_EXPORT int lib3270_get_element(H3270 *h, int baddr, unsigned char *c, unsigned short *attr)
... ... @@ -338,14 +340,12 @@ static void screen_update(H3270 *session, int bstart, int bend)
338 340 }
339 341 else
340 342 {
341   - if (lib3270_get_toggle(session,MONOCASE))
  343 + if(lib3270_get_toggle(session,MONOCASE))
342 344 addch(session,baddr,asc2uc[ebc2asc[session->ea_buf[baddr].cc]],attr,&first,&last);
343 345 else
344 346 addch(session,baddr,ebc2asc[session->ea_buf[baddr].cc],attr,&first,&last);
345 347 }
346 348 }
347   -
348   -
349 349 }
350 350  
351 351 if(first >= 0)
... ... @@ -365,6 +365,7 @@ static void screen_update(H3270 *session, int bstart, int bend)
365 365  
366 366 void screen_disp(H3270 *session)
367 367 {
  368 + CHECK_SESSION_HANDLE(session);
368 369 screen_update(session,0,session->rows*session->cols);
369 370 }
370 371  
... ...
selection.c
... ... @@ -598,8 +598,6 @@ LIB3270_EXPORT int lib3270_drag_selection(H3270 *h, unsigned char flag, int orig
598 598 else if((flag&0x8F) == SELECTION_ACTIVE)
599 599 return lib3270_move_selected_area(h,origin,baddr);
600 600  
601   -// trace("%s",__FUNCTION__);
602   -
603 601 row = baddr/h->cols;
604 602 col = baddr%h->cols;
605 603  
... ...
toggles.c
... ... @@ -84,7 +84,8 @@ LIB3270_EXPORT unsigned char lib3270_get_toggle(H3270 *session, LIB3270_TOGGLE i
84 84  
85 85 if(ix < 0 || ix >= N_TOGGLES)
86 86 return 0;
87   - return (unsigned char) session->toggle[ix].value != 0;
  87 +
  88 + return session->toggle[ix].value != 0;
88 89 }
89 90  
90 91 /*
... ...