diff options
| author | Eli Zaretskii | 1998-04-22 10:26:10 +0000 |
|---|---|---|
| committer | Eli Zaretskii | 1998-04-22 10:26:10 +0000 |
| commit | 31354c30f668c552339b0636ae1e65e44a19cb86 (patch) | |
| tree | 4af7ce0053d73fc081de00c61138e5cd5f40afa8 /src | |
| parent | 181688f29c4495e90fb12d9b18001218ccfd3ff9 (diff) | |
| download | emacs-31354c30f668c552339b0636ae1e65e44a19cb86.tar.gz emacs-31354c30f668c552339b0636ae1e65e44a19cb86.zip | |
(Fwin16_set_clipboard_data): Call UNBLOCK_INPUT before calling sit_for.
(Fwin16_get_clipboard_data, Fwin16_set_clipboard_data): Balance
the calls to BLOCK_INPUT and UNBLOCK_INPUT.
Diffstat (limited to 'src')
| -rw-r--r-- | src/w16select.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/w16select.c b/src/w16select.c index 87f341136a4..7ddda5a5a8e 100644 --- a/src/w16select.c +++ b/src/w16select.c | |||
| @@ -419,12 +419,15 @@ DEFUN ("win16-set-clipboard-data", Fwin16_set_clipboard_data, Swin16_set_clipboa | |||
| 419 | 419 | ||
| 420 | close_clipboard (); | 420 | close_clipboard (); |
| 421 | 421 | ||
| 422 | if (ok) goto done; | 422 | if (ok) goto unblock; |
| 423 | 423 | ||
| 424 | error: | 424 | error: |
| 425 | 425 | ||
| 426 | ok = 0; | 426 | ok = 0; |
| 427 | 427 | ||
| 428 | unblock: | ||
| 429 | UNBLOCK_INPUT; | ||
| 430 | |||
| 428 | /* Notify user if the text is too large to fit into DOS memory. | 431 | /* Notify user if the text is too large to fit into DOS memory. |
| 429 | (This will happen somewhere after 600K bytes (470K in DJGPP v1.x), | 432 | (This will happen somewhere after 600K bytes (470K in DJGPP v1.x), |
| 430 | depending on user system configuration.) If we just silently | 433 | depending on user system configuration.) If we just silently |
| @@ -437,7 +440,6 @@ DEFUN ("win16-set-clipboard-data", Fwin16_set_clipboard_data, Swin16_set_clipboa | |||
| 437 | } | 440 | } |
| 438 | 441 | ||
| 439 | done: | 442 | done: |
| 440 | UNBLOCK_INPUT; | ||
| 441 | 443 | ||
| 442 | return (ok ? string : Qnil); | 444 | return (ok ? string : Qnil); |
| 443 | } | 445 | } |
| @@ -464,7 +466,7 @@ DEFUN ("win16-get-clipboard-data", Fwin16_get_clipboard_data, Swin16_get_clipboa | |||
| 464 | BLOCK_INPUT; | 466 | BLOCK_INPUT; |
| 465 | 467 | ||
| 466 | if (!open_clipboard ()) | 468 | if (!open_clipboard ()) |
| 467 | goto done; | 469 | goto unblock; |
| 468 | 470 | ||
| 469 | if ((data_size = get_clipboard_data_size (CF_TEXT)) == 0 || | 471 | if ((data_size = get_clipboard_data_size (CF_TEXT)) == 0 || |
| 470 | (htext = (unsigned char *)xmalloc (data_size)) == 0) | 472 | (htext = (unsigned char *)xmalloc (data_size)) == 0) |
| @@ -481,9 +483,11 @@ DEFUN ("win16-get-clipboard-data", Fwin16_get_clipboard_data, Swin16_get_clipboa | |||
| 481 | 483 | ||
| 482 | closeclip: | 484 | closeclip: |
| 483 | close_clipboard (); | 485 | close_clipboard (); |
| 486 | |||
| 487 | unblock: | ||
| 488 | UNBLOCK_INPUT; | ||
| 484 | 489 | ||
| 485 | done: | 490 | done: |
| 486 | UNBLOCK_INPUT; | ||
| 487 | 491 | ||
| 488 | return (ret); | 492 | return (ret); |
| 489 | } | 493 | } |