Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

graphics/windows, graphics/threads #8421

Closed
vicuna opened this issue Dec 17, 2003 · 1 comment
Closed

graphics/windows, graphics/threads #8421

vicuna opened this issue Dec 17, 2003 · 1 comment
Labels

Comments

@vicuna
Copy link

vicuna commented Dec 17, 2003

Original bug ID: 1987
Reporter: administrator
Status: closed
Resolution: fixed
Priority: normal
Severity: minor
Category: ~DO NOT USE (was: OCaml general)

Bug description

Full_Name: Benjamin Leperchey
Version: 3.07+2
OS: Windows XP, linux
Submission from: amontsouris-108-1-6-52.w193-253.abo.wanadoo.fr (193.253.239.52)

[Il est possible que ce message soit duplique, je m'en excuse d'avance]

Bonjour,

j'ai releve ce qui ressemble a un bug dans la librairie graphics sous
windows, avec la distribution 3.07+2. Lorsque que je compile en bytecode
et que j'execute le code suivant:

open Graphics

let _=
open_graph " 100x100";

while true do
if key_pressed()
then begin
print_string "key";
print_newline();
print_char (read_key());
print_newline() end
done
Supposons qu'on tape 0,1 puis 2.
Le comportement attendu (qui est celui de la version linux) est:
key
0 apres 0
key
1 apres 1
key
2 apres 2

Sous windows, on voit
key apres 0
1
key apres 1
2
key apres 2

key_pressed "mange" la premiere touche (l'appel a read_key est alors
bloquant), mais repond vrai sur la touche suivante...

D'autre part, utiliser close_graph puis open_graph laisse souvent deux
fenetres (existe-t-il un autre moyen de redimensionner la fenetre ?). En
mettant un delai entre les deux, ca marche mieux, mais pas toujours.

Et enfin, et ceci s'applique aussi a la version Linux, il faudrait
indiquer quelque part dans la doc qu'il ne faut pas utiliser des threads
avec graphics, si possible en vue (les bugs obtenus sont aleatoires, et
ils font planter le programme, apparemment sans raison, ce qui est tres
agacant). Il semble que tout marche plus ou moins si on effectue tous les
appels a graphics depuis le meme thread, mais des signaux sont lances au
programme (ce qui cause des erreurs Unix_error(EINTR,,) a des endroits
du programme qui n'ont absolument rien a voir)

Cordialement,

Benjamin

@vicuna
Copy link
Author

vicuna commented Jun 22, 2004

Comment author: administrator

Fixed 2004-06-21 by XL

@vicuna vicuna closed this as completed Jun 22, 2004
@vicuna vicuna added the bug label Mar 19, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant