RE: ANNOUNCE: Tk-804.027-p3.patch.gz
<[email protected]> Fri, 24 Nov 2006 16:11:01 +0100
| Newsgroups | gmane.comp.lang.perl.tk |
|---|---|
| Message-ID | <5A2C73EEAC2539458E55C514A51DCC5D02881FFD@mucse304.eu.infineon.com> |
Hi Slaven, thank you very much for the useful hint! Yes this was the major problem: my libfontconfig.so did not know a single font! I recompiled fontconfig-2.4.1 with some sensible paths to fonts, and now your one-liner works, as well as several of the tests. But many others still fail with segfault: Failed Test Stat Wstat Total Fail Failed List of Failed ----------------------------------------------------------- t/JP.t 0 139 294 0 0.00% ?? t/KR.t 0 139 271 0 0.00% ?? t/create.t 0 139 573 1046 182.55% 51-573 t/entry.t 0 139 336 524 155.95% 75-336 t/fbox.t 0 139 6 6 100.00% 4-6 t/fileevent.t 0 139 1 0 0.00% ?? t/font.t 0 139 14 2 14.29% 14 t/geomgr.t 0 139 19 6 31.58% 17-19 t/list.t 0 139 6 0 0.00% ?? t/listbox.t 0 139 537 996 185.47% 40-537 t/msgbox.t 0 139 13 20 153.85% 4-13 t/text.t 0 139 119 0 0.00% ?? t/unicode.t 0 139 7 4 57.14% 6-7 t/wm-tcl.t 0 139 315 348 110.48% 142-315 I went back to fontconfig-2.3.2 and it worked again. Same on Linux. On both Solaris and Linux, I can get a working Tk with XFT with: freetype-2.2.1 fontconfig-2.3.2 renderproto-0.9.2 libXrender-0.9.2 libXft-2.1.11 But with the latest fontconfig-2.4.1 I get segfaults in the above tests - and it seems that the segfault always happens in some destruction function (FcPatternDestroy, FcCharsetDestroy). Sorry, no idea whether this is Tks or fontconfig's fault. With the above configuration (the working one), I get however still some errors in t/listbox.t (on Linux), see attached log. Maybe also some issue with font sizing? Hope this helps to make the Tk run with the latest and greatest prerequisite packages... Cheers, Marek -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Slaven Rezic Sent: Wednesday, November 22, 2006 10:15 PM To: Rouchal Marek (IFAG COM BTS DF R2G) Cc: [email protected] Subject: Re: ANNOUNCE: Tk-804.027-p3.patch.gz <[email protected]> writes: > Hi Slaven, > > thank you for continuing the great work of Nick... > > I applied the patch and Tk now seems to work very > well with my perl-5.8.8 on Linux and Solaris 8. > However, on Solaris 8 (Sparc), I cannot get it > to work OK with XFT - the test dump core, > obviously because some font pointer remains at 0x0, > and this pointer is used :-/ > > I tried one quick fix in pTk/tkUnixXft.c, around > line 189: > freePattern: > if(charset) > FcCharSetDestroy (charset); > FcPatternDestroy (pattern); > return NULL; > ...because charset may be NULL on the goto freePattern; > above. But that just triggers another problem: > tkFont.c:1136: fontPtr->resourceRefCount = 1; > and fontPtr is NULL again... > > Do you have any clue what the problem might be? Anything > I can debug further? Do you have the command line tools fc-list and fc-match installed? Is there any output of fonts with fc-list? Is there any output with fc-match? And with "fc-match helvetica"? Maybe you can try to use some other font, e.g. perl -Mblib -MTk -e 'tkinit->Label(-text => "hello, world")->pack;MainLoop' -- -font '{Bitstream Vera Sans} 10' Regards, Slaven -- Slaven Rezic - slaven <at> rezic <dot> de tksm - Perl/Tk program for searching and replacing in multiple files http://ptktools.sourceforge.net/#tksm --++**==--++**==--++**==--++**==--++**==--++**==--++**== ptk mailing list [email protected] https://mailman.stanford.edu/mailman/listinfo/ptk
listbox.txt
(text/plain, 14.8 KB)
1..537 ok 1 ok 2 - Listbox exists ok 3 - The object isa Tk::Listbox ok 4 - configure set for -activestyle ok 5 - configuration option -activestyle ok 6 - cget call with -activestyle ok 7 - error message for -activestyle ok 8 - configure set for -background ok 9 - configuration option -background ok 10 - cget call with -background ok 11 - error message for -background ok 12 - configure set for -bd ok 13 - configuration option -bd ok 14 - cget call with -bd ok 15 - error message for -bd ok 16 - configure set for -bg ok 17 - configuration option -bg ok 18 - cget call with -bg ok 19 - error message for -bg ok 20 - configure set for -borderwidth ok 21 - configuration option -borderwidth ok 22 - cget call with -borderwidth ok 23 - error message for -borderwidth ok 24 - configure set for -cursor ok 25 - configuration option -cursor ok 26 - cget call with -cursor ok 27 - error message for -cursor ok 28 - configure set for -exportselection ok 29 - configuration option -exportselection ok 30 - cget call with -exportselection ok 31 # skip error test for -exportselection ok 32 - configure set for -fg ok 33 - configuration option -fg ok 34 - cget call with -fg ok 35 - error message for -fg ok 36 - configure set for -font ok 37 # skip configure test for -font ok 38 # skip cget test for -font ok 39 # skip error test for -font ok 40 - configure set for -foreground ok 41 - configuration option -foreground ok 42 - cget call with -foreground ok 43 - error message for -foreground ok 44 - configure set for -height ok 45 - configuration option -height ok 46 - cget call with -height ok 47 - error message for -height ok 48 - configure set for -highlightbackground ok 49 - configuration option -highlightbackground ok 50 - cget call with -highlightbackground ok 51 - error message for -highlightbackground ok 52 - configure set for -highlightcolor ok 53 - configuration option -highlightcolor ok 54 - cget call with -highlightcolor ok 55 - error message for -highlightcolor ok 56 - configure set for -highlightthickness ok 57 - configuration option -highlightthickness ok 58 - cget call with -highlightthickness ok 59 - error message for -highlightthickness ok 60 - configure set for -highlightthickness ok 61 - configuration option -highlightthickness ok 62 - cget call with -highlightthickness ok 63 # skip error test for -highlightthickness ok 64 # skip *TODO* -offset not yet implemented on 804.027001 ok 65 # skip *TODO* -offset not yet implemented on 804.027001 ok 66 # skip *TODO* -offset not yet implemented on 804.027001 ok 67 - configure set for -relief ok 68 - configuration option -relief ok 69 - cget call with -relief ok 70 - error message for -relief ok 71 - configure set for -selectbackground ok 72 - configuration option -selectbackground ok 73 - cget call with -selectbackground ok 74 - error message for -selectbackground ok 75 - configure set for -selectborderwidth ok 76 - configuration option -selectborderwidth ok 77 - cget call with -selectborderwidth ok 78 - error message for -selectborderwidth ok 79 - configure set for -selectforeground ok 80 - configuration option -selectforeground ok 81 - cget call with -selectforeground ok 82 - error message for -selectforeground ok 83 - configure set for -selectmode ok 84 - configuration option -selectmode ok 85 - cget call with -selectmode ok 86 # skip error test for -selectmode ok 87 - configure set for -setgrid ok 88 - configuration option -setgrid ok 89 # skip cget test for -setgrid ok 90 # skip error test for -setgrid ok 91 - configure set for -state ok 92 - configuration option -state ok 93 - cget call with -state ok 94 - error message for -state ok 95 - configure set for -takefocus ok 96 - configuration option -takefocus ok 97 - cget call with -takefocus ok 98 # skip error test for -takefocus ok 99 # skip *TODO* -tile not yet implemented on 804.027001 ok 100 # skip *TODO* -tile not yet implemented on 804.027001 ok 101 # skip *TODO* -tile not yet implemented on 804.027001 ok 102 - configure set for -width ok 103 - configuration option -width ok 104 - cget call with -width ok 105 - error message for -width ok 106 - configure set for -xscrollcommand ok 107 # skip configure test for -xscrollcommand ok 108 # skip cget test for -xscrollcommand ok 109 # skip error test for -xscrollcommand ok 110 - configure set for -yscrollcommand ok 111 # skip configure test for -yscrollcommand ok 112 # skip cget test for -yscrollcommand ok 113 # skip error test for -yscrollcommand ok 114 - configure set for -listvar ok 115 - configuration option -listvar ok 116 - cget call with -listvar ok 117 # skip error test for -listvar ok 118 - error message ok 119 ok 120 - Tk class Listbox ok 121 - error message ok 122 ok 123 - Listbox activate error message ok 124 ok 125 - Listbox activate ok 126 ok 127 ok 128 ok 129 - Listbox bbox error message ok 130 ok 131 ok 132 - Listbox bbox ok 133 ok 134 - No core dump with bbox not ok 135 # Failed test at t/listbox.t line 306. # Structures begin differing at: # $got->[3] = '16' # $expected->[3] = '14' not ok 136 # Failed test at t/listbox.t line 307. # Structures begin differing at: # $got->[1] = '28' # $expected->[1] = '26' ok 137 not ok 138 # Failed test at t/listbox.t line 315. # Structures begin differing at: # $got->[3] = '16' # $expected->[3] = '14' not ok 139 # Failed test at t/listbox.t line 322. # Structures begin differing at: # $got->[1] = '91' # $expected->[1] = '83' not ok 140 # Failed test at t/listbox.t line 323. # Structures begin differing at: # $got->[1] = '91' # $expected->[1] = '83' ok 141 not ok 142 # Failed test at t/listbox.t line 340. # Structures begin differing at: # $got->[1] = '43' # $expected->[1] = '39' not ok 143 # Failed test at t/listbox.t line 348. # Structures begin differing at: # $got->[1] = '62' # $expected->[1] = '56' not ok 144 # Failed test at t/listbox.t line 349. # Structures begin differing at: # $got->[1] = '81' # $expected->[1] = '73' ok 145 - Listbox cget message ok 146 ok 147 ok 148 ok 149 - Listbox configure ok 150 ok 151 ok 152 ok 153 ok 154 - Listbox curselection error message ok 155 - Listbox curselection ok 156 ok 157 - Listbox delete error message ok 158 ok 159 ok 160 ok 161 - Listbox delete element ok 162 ok 163 ok 164 ok 165 ok 166 ok 167 ok 168 ok 169 ok 170 ok 171 ok 172 ok 173 ok 174 ok 175 ok 176 ok 177 ok 178 - Listbox get error message ok 179 ok 180 ok 181 ok 182 ok 183 ok 184 - get with float ok 185 ok 186 ok 187 ok 188 ok 189 ok 190 ok 191 ok 192 ok 193 ok 194 ok 195 ok 196 ok 197 ok 198 ok 199 ok 200 ok 201 ok 202 - Listbox index error message ok 203 ok 204 ok 205 ok 206 ok 207 ok 208 ok 209 - Listbox insert error message ok 210 ok 211 - Listbox insert ok 212 ok 213 ok 214 ok 215 ok 216 ok 217 ok 218 ok 219 ok 220 ok 221 - Listbox nearest error message ok 222 ok 223 ok 224 - Listbox nearest ok 225 - Listbox scan error message ok 226 ok 227 ok 228 ok 229 not ok 230 - Listbox scan # Failed test 'Listbox scan' # at t/listbox.t line 652. # '0.264864864864865,0.454054054054054' # doesn't match '(?-xism:^0\.24936.*,0\.42748.*$)' ok 231 ok 232 - Listbox see error message ok 233 ok 234 ok 235 - Listbox see ok 236 ok 237 ok 238 ok 239 ok 240 ok 241 ok 242 ok 243 ok 244 ok 245 - Listbox selection error message ok 246 ok 247 ok 248 ok 249 ok 250 ok 251 - Listbox selection ok 252 ok 253 ok 254 ok 255 ok 256 ok 257 ok 258 - Tk selection includes error message ok 259 - Listbox selection includes ok 260 ok 261 ok 262 ok 263 ok 264 ok 265 ok 266 ok 267 ok 268 ok 269 ok 270 ok 271 - Listbox selection error message ok 272 - Listbox size error message ok 273 - Listbox size ok 274 - xview, first value ok 275 - xview, second value ok 276 ok 277 ok 278 - Listbox xview with floats ok 279 - Listbox xview error message ok 280 ok 281 ok 282 ok 283 ok 284 ok 285 ok 286 ok 287 ok 288 ok 289 ok 290 ok 291 ok 292 ok 293 - yview returned 0.266666666666667 ok 294 - Listbox yview error message ok 295 ok 296 ok 297 ok 298 ok 299 ok 300 ok 301 ok 302 ok 303 ok 304 ok 305 ok 306 ok 307 ok 308 - SelectionGet, error message ok 309 ok 310 ok 311 - Empty curselection ok 312 ok 313 ok 314 ok 315 ok 316 ok 317 ok 318 # TODO Tests may fail (window-manager related?) ok 319 # TODO Tests may fail (window-manager related?) ok 320 # TODO Tests may fail (window-manager related?) ok 321 ok 322 ok 323 - -listvar after initial setting ok 324 - ConfigureListbox, no listvar -> existing listvar not ok 325 - ConfigureListbox procedure, listvar -> no listvar # TODO Not yet implemented in Perl/Tk # Failed (TODO) test 'ConfigureListbox procedure, listvar -> no listvar' # at t/listbox.t line 1064. # Structures begin differing at: # $got->[4] = '1' # $expected->[4] = Does not exist ok 326 # TODO Not yet implemented in Perl/Tk not ok 327 - ConfigureListbox, no listvar -> non-existant listvar # TODO Not yet implemented in Perl/Tk # Failed (TODO) test 'ConfigureListbox, no listvar -> non-existant listvar' # at t/listbox.t line 1090. # Structures begin differing at: # $got->[0] = Does not exist # $expected->[0] = 'a' ok 328 - ConfigureListbox, non-existant listvar not ok 329 - ConfigureListbox, listvar -> non-existant listvar # TODO Not yet implemented in Perl/Tk # Failed (TODO) test 'ConfigureListbox, listvar -> non-existant listvar' # at t/listbox.t line 1108. # Structures begin differing at: # $got->[0] = Does not exist # $expected->[0] = 'a' ok 330 - ConfigureListbox, listvar -> same listvar ok 331 - ConfigureListbox, no listvar -> no listvar not ok 332 # TODO Not yet implemented in Perl/Tk # Failed (TODO) test at t/listbox.t line 1138. # '' # doesn't match '(?-xism:Should have an error message about invalid type)' not ok 333 - ConfigureListbox, no listvar -> bad listvar # TODO Not yet implemented in Perl/Tk # Failed (TODO) test 'ConfigureListbox, no listvar -> bad listvar' # at t/listbox.t line 1139. # Structures begin differing at: # $got->[0] = 'this' # $expected->[0] = 'a' not ok 334 # TODO Not yet implemented in Perl/Tk # Failed (TODO) test at t/listbox.t line 1141. # got: 'REF(0x8561f38)' # expected: undef ok 335 # skip font-related tests (fixed font) ok 336 # skip font-related tests (fixed font) ok 337 # skip font-related tests (fixed font) ok 338 # skip font-related tests (fixed font) ok 339 # skip font-related tests (fixed font) ok 340 # skip font-related tests (fixed font) ok 341 # skip font-related tests (fixed font) ok 342 # skip font-related tests (fixed font) ok 343 # skip font-related tests (fixed font) ok 344 # skip font-related tests (fixed font) ok 345 ok 346 ok 347 ok 348 ok 349 ok 350 ok 351 ok 352 ok 353 ok 354 ok 355 ok 356 not ok 357 # Failed test at t/listbox.t line 1281. # got: '73' # expected: '80' not ok 358 # Failed test at t/listbox.t line 1282. # got: '103' # expected: '93' not ok 359 # Failed test at t/listbox.t line 1284. # got: '115' # expected: '122' not ok 360 # Failed test at t/listbox.t line 1285. # got: '122' # expected: '110' ok 361 # skip dumps core *TODO* ok 362 - curselection after selection set ok 363 ok 364 - size after negative delete ok 365 - SelectionGet after selectionSet ok 366 ok 367 ok 368 ok 369 ok 370 ok 371 ok 372 ok 373 ok 374 ok 375 ok 376 ok 377 ok 378 ok 379 ok 380 ok 381 ok 382 ok 383 ok 384 ok 385 ok 386 ok 387 ok 388 ok 389 ok 390 ok 391 ok 392 not ok 393 # Failed test at t/listbox.t line 1451. # got: '73' # expected: '80' not ok 394 # Failed test at t/listbox.t line 1452. # got: '160' # expected: '144' ok 395 not ok 396 # Failed test at t/listbox.t line 1455. # got: '103' # expected: '93' ok 397 # skip dumps core *TODO* ok 398 ok 399 ok 400 - Listbox is destroyed not ok 401 # Failed test at t/listbox.t line 1490. # '0 0.238095238095238' # doesn't match '(?-xism:^0 0\.2222)' not ok 402 # Failed test at t/listbox.t line 1491. # '0 0.25' # doesn't match '(?-xism:^0 0\.3333)' ok 403 ok 404 ok 405 not ok 406 - Geometry # Failed test 'Geometry' # at t/listbox.t line 1511. # '150x198+0+0' # doesn't match '(?-xism:150x178\+\d+\+\d+)' ok 407 ok 408 ok 409 ok 410 ok 411 ok 412 - Listbox index error message ok 413 ok 414 ok 415 ok 416 ok 417 ok 418 ok 419 ok 420 ok 421 ok 422 not ok 423 # Failed test at t/listbox.t line 1566. # got: '2' # expected: '3' not ok 424 # Failed test at t/listbox.t line 1567. # got: '2' # expected: '3' ok 425 ok 426 ok 427 ok 428 ok 429 ok 430 ok 431 ok 432 ok 433 ok 434 ok 435 ok 436 ok 437 ok 438 ok 439 ok 440 ok 441 ok 442 ok 443 ok 444 ok 445 ok 446 ok 447 ok 448 ok 449 ok 450 ok 451 ok 452 ok 453 ok 454 ok 455 ok 456 ok 457 ok 458 ok 459 ok 460 ok 461 ok 462 # skip font-related tests (fixed font) ok 463 # skip font-related tests (fixed font) ok 464 # skip font-related tests (fixed font) ok 465 ok 466 ok 467 ok 468 ok 469 ok 470 ok 471 ok 472 ok 473 ok 474 ok 475 ok 476 ok 477 ok 478 ok 479 ok 480 ok 481 ok 482 ok 483 ok 484 ok 485 ok 486 ok 487 ok 488 ok 489 ok 490 ok 491 ok 492 ok 493 - ListboxListVarProc ok 494 ok 495 ok 496 - ListboxListVarProc, test selection after listvar mod ok 497 ok 498 not ok 499 # TODO Not yet implemented in Perl/Tk # Failed (TODO) test at t/listbox.t line 1963. # Structures begin differing at: # $got->[0] = Does not exist # $expected->[0] = '2' ok 500 ok 501 ok 502 ok 503 - ConfigureListboxItem error ok 504 - itemconfigure options ok 505 - itemconfigure with just one option ok 506 - ConfigureListboxItem, wrong num args ok 507 - ConfigureListboxItem, multiple calls, red ok 508 - ConfigureListboxItem, multiple calls, orange ok 509 - ConfigureListboxItem, multiple calls, yellow ok 510 - ConfigureListboxItem, multiple calls, green ok 511 - ConfigureListboxItem, multiple calls, blue ok 512 - ConfigureListboxItem, multiple calls, darkblue ok 513 - ConfigureListboxItem, multiple calls, violet ok 514 - itemconfigure -background ok 515 - itemconfigure -background error ok 516 - still same value after error ok 517 - itemconfigure -bg ok 518 - itemconfigure -bg error ok 519 - still same value after error ok 520 - itemconfigure -fg ok 521 - itemconfigure -fg error ok 522 - still same value after error ok 523 - itemconfigure -foreground ok 524 - itemconfigure -foreground error ok 525 - still same value after error ok 526 - itemconfigure -selectbackground ok 527 - itemconfigure -selectbackground error ok 528 - still same value after error ok 529 - itemconfigure -selectforeground ok 530 - itemconfigure -selectforeground error ok 531 - still same value after error ok 532 - itemcget with undef value ok 533 ok 534 - itemcget error ok 535 - listbox item configurations and widget based deletions ok 536 - listbox item configurations and widget based inserts ok 537 # Looks like you failed 21 tests of 537.