delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2023/11/06/13:33:39

X-Recipient: archive-cygwin AT delorie DOT com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A10453857BB2
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
s=default; t=1699295617;
bh=UL4VSOt6hWrk9SMo9Jwh1l3nPOfREytEZnlD2OLovoI=;
h=To:Subject:Date:References:In-Reply-To:List-Id:List-Unsubscribe:
List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:
From;
b=hApBHzZznsiviv6uiWoE52PUo768AJNr8n5U0utjb0Ox6obvZ5rwrvQSe0pwiqiwW
cQWmkJsYf4WzxgK8RBLXX6KtDQb85eQVvJIJ2qAm8jdGzO9aZ2RB6DCOnIQ0uh82NO
GQ1v+WvYg9nK7YMac1fIBQkjQqR/tjlPbXU6lCxQ=
X-Original-To: cygwin AT cygwin DOT com
Delivered-To: cygwin AT cygwin DOT com
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org DC38C3858C53
ARC-Filter: OpenARC Filter v1.0.0 sourceware.org DC38C3858C53
ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699295603; cv=none;
b=uqGl65ZCgPb9S1X5sO/rrKMRFoMzSXfkD4V9Ft/Gm3FvmF/PStxskAyj1fyd7+x8naaatYfQxZ8jue2MdbefFq/sXUMtux7QhZnrj6QcUqGdPnUOH1WxBhyWMgVkzpQJ+K/vuFR41GRRnvj+Ya0lRTRjAbwf1skz4Qs74ioeWL0=
ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key;
t=1699295603; c=relaxed/simple;
bh=t5MQr9guHD7cQq/0V2LjVlOJkxuLFi8HWXPTnQJn2w4=;
h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version;
b=XF6pLudWemgYkwQYMGvb2bS7fjlY+rQKFZR4iFFNsmuo9CXvvp5e9uTNFSfhGqWrnfBSPt3ohhebq/AfQfg1+QzKgIFDZL93iganMQ4TYgHRAcbYRkX1Sbt6KMzUthuU/t754tTzMC3dyMzp3nl0NmL+j3ANJN7Hjvp8W1bLl70=
ARC-Authentication-Results: i=1; server2.sourceware.org
To: "'Jon Turney'" <jon DOT turney AT dronecode DOT org DOT uk>,
The Cygwin Mailing List
<cygwin AT cygwin DOT com>
Subject: RE: [EXT] Re: XWin copy/paste succeeds on Windows 7, crashes on
Windows 11 Enterprise.
Thread-Topic: [EXT] Re: XWin copy/paste succeeds on Windows 7, crashes on
Windows 11 Enterprise.
Thread-Index: AdoOkZldZkaI/m/oSRiHM2QwVvHrlwAwP1KAAGK0UJA=
Date: Mon, 6 Nov 2023 18:33:11 +0000
Message-ID: <474496f4a2e94e3c8ba06e1a2eaa1d75@ida.org>
References: <242d35130d84418d934265782064690b AT ida DOT org>
<18fd5519-180d-4d48-95d1-994f7c5e36f5 AT dronecode DOT org DOT uk>
In-Reply-To: <18fd5519-180d-4d48-95d1-994f7c5e36f5@dronecode.org.uk>
Accept-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.0.14.18]
MIME-Version: 1.0
X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00, DKIM_SIGNED,
DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, HTML_MESSAGE, SPF_HELO_NONE,
SPF_PASS, TXREP,
T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on
server2.sourceware.org
X-Content-Filtered-By: Mailman/MimeDel 2.1.30
X-BeenThere: cygwin AT cygwin DOT com
X-Mailman-Version: 2.1.30
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-request AT cygwin DOT com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=subscribe>
From: "Stone, Timothy M via Cygwin" <cygwin AT cygwin DOT com>
Reply-To: "Stone, Timothy M" <tstone AT ida DOT org>
Sender: "Cygwin" <cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com>


Thanks for your reply.  I didn't provide enough information last time, sorry about that.



Let me start over, with an example and some brief code.



Below is some simple code to bring up a shell with a TextField widget in it.



When I initialize the TextField widget, I change the code to use 1 of the 2 listed translations:



  translations_copypaste:  This translation table calls the built-in actions for paste-clipboard, copy-clipboard, and cut-clipboard when the familiar ctrl-c, ctrl-x, and ctrl-v are pressed.



  translations_ignore:  This translation table always calls ignore_cut_paste() when the same keys are pressed.  This function just prints a message to the console ("Ignoring") so I know it's working.



This is almost the entire program.  All that is missing is initializing the parent and the app_context.





What happens is:



On Windows 7 Professional:

Both translation tables work as expected:

translations_ignore: Correctly causes the text "Ignoring" to print every time ctrl-c, ctrl-x, or ctrl-v are pressed.

translations_copypaste:  Correctly causes text in the small window to cut/paste/copy as expected and is integrated with the system clipboard.



On Windows 11 Enterprise:

translations_ignore: Correctly causes the text "Ignoring" to print every time ctrl-c, ctrl-x, or ctrl-v are pressed.

translations_copypaste:  My application (not the X-Server) crashes every time ctrl-c, ctrl-x, or ctrl-v are pressed.  The X-Server seems to continue running.





I don't know how to debug this further...

  it seems like the translation table is working, since the "ignore" translation table works...

  also, everything works perfectly on Windows 7 professional, so it seems like the "should"" be OK.





Code:




void ignore_cut_paste(Widget widget, XEvent *event, String *args, int *num_args)
{
  printf("Ignoring\n");
}

void TestPaste(Widget parent)
{
  Widget thewin,rowcol,textarea;
  XtActionsRec actions2;

  actions2.string = "ignore_cut_paste";
  actions2.proc = (XtActionProc)ignore_cut_paste;
  XtAppAddActions (app_context, &actions2, 1);

  String translations_copypaste = "#override\n Ctrl<Key>v:  paste-clipboard()\n Ctrl<Key>c:  copy-clipboard()\n Ctrl<Key>x:  cut-clipboard()";

  String translations_ignore = "#override\n Ctrl<Key>v:  ignore_cut_paste()\n Ctrl<Key>c:  ignore_cut_paste()\n Ctrl<Key>x:  ignore_cut_paste()";

  thewin = XtCreatePopupShell("Test", topLevelShellWidgetClass,parent,NULL,0);

  rowcol = XtVaCreateWidget ("rowcol",xmRowColumnWidgetClass, thewin, NULL);

  textarea = XtVaCreateManagedWidget ("test_area",
                                  xmTextFieldWidgetClass, rowcol,
                                  XmNmaxLength,        80,
                                  XmNtranslations,     XtParseTranslationTable ( translations_copypaste ) ,
                                  NULL);
  XtManageChild(textarea);
  XtManageChild (rowcol);
  XtPopup(thewin,XtGrabNone);
}

















-----Original Message-----
From: Jon Turney <jon DOT turney AT dronecode DOT org DOT uk>
Sent: Saturday, November 4, 2023 11:11 AM
To: Stone, Timothy M <tstone AT ida DOT org>; The Cygwin Mailing List <cygwin AT cygwin DOT com>
Subject: [EXT] Re: XWin copy/paste succeeds on Windows 7, crashes on Windows 11 Enterprise.



*** This email originated outside of IDA. Please verify that you recognize the sender and know the content is safe before proceeding. ***





On 03/11/2023 20:17, Stone, Timothy M via Cygwin wrote:

>

>

> I'm having a really hard time debugging this issue.

>

>

>

> If I use the exact same version of cygwin and XWin, exact same code, exact same Motif GUI app...

>

>

>

> I find that when I try to use copy/paste functionality in TextFieldWidgets:

>

>

>

>    *Cut/Copy/Paste works perfectly on Windows 7 Professional

>

>

>

>    *Cut/Copy/Paste does not work at all and typically crashes on

> Windows 11 Enterprise

>



I'm assuming this means "the X server crashes", but it's not exactly clear.



If that is the case, there are some instructions on generating backtraces to help with debugging at [1].



[1] https://x.cygwin.com/devel/backtrace.html



>

> I am using an older version of cygwin for this specific test (cygwin 1.7.15 and XWin 1.13.2-1), but I am having the same issue with the latest version as well.

>

[...]

>

> Any help greatly appreciated!  Seems this must be a system issue since everything about the cygwin and XWin is exactly the same on both systems?



It's not really safe to make assumptions like this. This could be a latent bug in XWin which just happens to get exposed on W11 (or that particular system, even)...





-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019