diff --git a/importexport/musicxml/importmxmlpass2.cpp b/importexport/musicxml/importmxmlpass2.cpp
index 058f03d58b2a9..efe541b220a45 100644
--- a/importexport/musicxml/importmxmlpass2.cpp
+++ b/importexport/musicxml/importmxmlpass2.cpp
@@ -7829,7 +7829,7 @@ static void addTie(const Notation& notation, Score* score, Note* note, const int
qInfo() << "endMeasure: " << endChord->measure();
qInfo() << "startChord->tick() + startChord->ticks(): " << (startChord->tick() + startChord->ticks()).toString();
qInfo() << "endChord->tick(): " << endChord->tick().toString();
- if (startMeasure == endChord->measure() || startChord->tick() + startChord->ticks() == endChord->tick()) {
+ if (startMeasure == endChord->measure() || startChord->tick() + startChord->actualTicks() == endChord->tick()) {
// only connect if they're in the same bar, or there are no notes/rests in the same voice between them
qInfo() << "Connect";
currTie->setEndNote(note);
diff --git a/mtest/musicxml/io/testTupletTie.xml b/mtest/musicxml/io/testTupletTie.xml
new file mode 100644
index 0000000000000..33585b630d3c9
--- /dev/null
+++ b/mtest/musicxml/io/testTupletTie.xml
@@ -0,0 +1,118 @@
+
+
+
+
+
+ MuseScore 3.6.2
+ 2024-09-01
+
+
+
+
+
+
+
+
+
+ brace
+
+
+ Piano
+ Pno.
+
+ Piano
+
+
+
+ 1
+ 1
+ 78.7402
+ 0
+
+
+
+
+
+
+ 3
+
+ 0
+
+
+
+ G
+ 2
+
+
+
+
+ 6
+ 1
+ half
+
+
+
+ D
+ 1
+ 4
+
+ 4
+ 1
+ half
+ sharp
+
+ 3
+ 2
+ quarter
+
+ up
+
+
+
+
+
+
+ D
+ 1
+ 4
+
+ 2
+
+ 1
+ quarter
+
+ 3
+ 2
+ quarter
+
+ up
+
+
+
+
+
+
+
+
+
+ D
+ 1
+ 4
+
+ 12
+
+ 1
+ whole
+
+
+
+
+
+ light-heavy
+
+
+
+
diff --git a/mtest/musicxml/io/testTupletTie_ref.mscx b/mtest/musicxml/io/testTupletTie_ref.mscx
new file mode 100644
index 0000000000000..35b51dc46ed6f
--- /dev/null
+++ b/mtest/musicxml/io/testTupletTie_ref.mscx
@@ -0,0 +1,171 @@
+
+
+
+
+ 0
+ 480
+
+ 1
+ 1
+ 1
+ 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ stdNormal
+
+ 3
+
+ Piano
+
+ Piano
+ Pno.
+ Piano
+ 21
+ 108
+ 21
+ 108
+ keyboard.piano
+ F
+
+ 100
+ 95
+
+
+ 100
+ 33
+
+
+ 100
+ 50
+
+
+ 100
+ 67
+
+
+ 100
+ 100
+
+
+ 120
+ 67
+
+
+ 150
+ 100
+
+
+ 150
+ 50
+
+
+ 120
+ 50
+
+
+ 120
+ 100
+
+
+
+
+
+
+
+
+
+ 10
+
+
+
+
+ G
+ G
+
+
+ 4
+ 4
+
+
+ half
+
+
+ 2
+ 3
+ quarter
+
+
+ 3
+
+
+
+ half
+ up
+
+
+ accidentalSharp
+
+ 63
+ 23
+
+
+
+ quarter
+ up
+
+
+
+
+
+
+ 1
+ -5/6
+
+
+
+ 63
+ 23
+
+
+
+
+
+
+
+
+ whole
+
+
+
+
+ -1
+ 5/6
+
+
+
+ 63
+ 23
+
+
+
+ end
+
+
+
+
+
+
diff --git a/mtest/musicxml/io/tst_mxml_io.cpp b/mtest/musicxml/io/tst_mxml_io.cpp
index 0d2f3f242290b..714e6d5229a5f 100644
--- a/mtest/musicxml/io/tst_mxml_io.cpp
+++ b/mtest/musicxml/io/tst_mxml_io.cpp
@@ -327,6 +327,7 @@ private slots:
void tuplets8() { mxmlMscxExportTestRef("testTuplets8"); }
void tuplets9() { mxmlIoTest("testTuplets9"); }
void tuplets10() { mxmlIoTest("testTuplets10"); }
+ void tupletTie() { mxmlImportTestRef("testTupletTie"); }
void twoNoteTremoloTuplet() { mxmlIoTest("testTwoNoteTremoloTuplet"); }
void uninitializedDivisions() { mxmlIoTestRef("testUninitializedDivisions"); }
void unnecessaryBarlines() { mxmlImportTestRef("testUnnecessaryBarlines"); }