Details
-
Bug
-
Resolution: Done
-
P2: Important
-
None
-
5.9.3, 5.11.1
Description
We have the following situation.
Step 1
First run of lupdate created the following ts files
English version
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE TS> <TS version="2.1" language="en_US"> <context> <name>Widget</name> <message> <location filename="Widget.ui" line="13"/> <source>Widget</source> <translation type="unfinished"></translation> </message> <message> <location filename="Widget.cpp" line="9"/> <source>Support in y-axis</source> <translation type="unfinished"></translation> </message> <message> <location filename="Widget.cpp" line="9"/> <source>Support in y/u-axis</source> <translation type="unfinished"></translation> </message> </context> </TS>
French version
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE TS> <TS version="2.1" language="fr_FR"> <context> <name>Widget</name> <message> <location filename="Widget.ui" line="13"/> <source>Widget</source> <translation type="unfinished"></translation> </message> <message> <location filename="Widget.cpp" line="9"/> <source>Support in y-axis</source> <translation type="unfinished"></translation> </message> <message> <location filename="Widget.cpp" line="9"/> <source>Support in y/u-axis</source> <translation type="unfinished"></translation> </message> </context> </TS>
Step 2
Delete manually one message from some ts file (for some random reason)
We obtained the following ts files
English version
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE TS> <TS version="2.1" language="en_US"> <context> <name>Widget</name> <message> <location filename="Widget.ui" line="13"/> <source>Widget</source> <translation type="unfinished"></translation> </message> <message> <location filename="Widget.cpp" line="9"/> <source>Support in y-axis</source> <translation type="unfinished"></translation> </message> <message> <location filename="Widget.cpp" line="9"/> <source>Support in y/u-axis</source> <translation type="unfinished"></translation> </message> </context> </TS>
French version
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE TS> <TS version="2.1" language="fr_FR"> <context> <name>Widget</name> <message> <location filename="Widget.ui" line="13"/> <source>Widget</source> <translation type="unfinished"></translation> </message> <message> <location filename="Widget.cpp" line="9"/> <source>Support in y-axis</source> <translation type="unfinished"></translation> </message> </context> </TS>
Step 3
Second run of lupdate doesn`t restore (repair) deleted message in French ts file.
Conclusion
By my opinion, lupdate should restore deleted messages, if this message not exists in ts file, but exists in source files.