Date: prev next · Thread: first prev next last
2018 Archives by date, by thread · List index


Bonsoir,

Peut-être que si nous avions le code source de cette macro ?

Thierry



Le lun. 5 nov. 2018 à 20:56, Patrick Gelin <patrick.gelin@free.fr> a écrit :

Le 05/11/2018 à 16:47, jean-francois.nifenecker@laposte.net a écrit :
Bonjour Patrick,

Je développe une application LibreOffice Base et sans comprendre
vraiment la
raison, du jours au lendemain, lorsque je rentre dans mon application
l'appel du premier script plante tout ... J'ai désactivé l'appel
automatique
à la méthode d'ouverture du document et lorsque je fais un simple test
MsgBox "Hello World !" dans un nouveau module j'obtiens le message
d'erreur
"Mémoire de pile insuffisante" ! Je n'ai alors d'autre choix que de
tuer le
processus LIbreOffice ...
typiquement, cette erreur survient lors d'appels récursifs ou en boucle
(sous-prog A appelle sous-prog B qui appelle sous-prog C qui... qui appelle
sous-prog A). L'empilement des appels jamais dépilés devient très vite
énorme et sature la mémoire -> plantage.


Très cordialement,

/Je m'en suis douté, mais mon programme n'a aucun appel récursif ....
Sur Libreoffice linux, le programme plante après l'affichage de ce
message, et le point d'arrêt sur la ligne MsgBox "Hello World !" n'est
pas atteint. Sur Windows, le point d'arrêt ne fonctionne pas mieux, mais
la boite de message est affichée après l'affichage du message d'erreur.
Dans ce dernier cas je peux observer une occupation soudaine du CPU à
environ 40 % juste avant l'affichage du message d'erreur. De toute
évidence une boucle est détectée, mais je suis incapable de comprendre
laquelle. Lorsque Base me redonne la main, il place le curseur du code à
la fin d'un module ne déclarant que des variables globales ... Et avant
cela, il plaçait le curseur sur un Sub traitant un message d'une autre
boite de dialogue (normalement) non sollicitée  ...
/

/Existerait-il une astuce pour la mettre en évidence cette boucle dans
mon code ? Peut-être avec des traces ? Sauf que je lance ma macro en
appuyant F8 dans ma Sub qui ne déclare que "Hello World" et j'ai
l'impression que le problème viendrait d'une librairie ...
/

/Ce peut-il qu'une librairie soit corrompue, qu'un virus ait modifié le
code ? J'ai découvert un virus dans mon fichier Base, avec Clamav sous
Linux. Mais il n'était pas installé avant le virus et Clamav est dénoncé
pour proposer de nombreux faux positifs. Par ailleurs un autre antivirus
sur un autre poste m'indique le fichier sans virus... Donc cela pourrait
confirmer un faux positif .../

Patrick


--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous
désinscrire
Les archives de la liste sont disponibles à
https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy


-- 
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.