@@ -81,7 +81,6 @@ export default class Mpeg4File extends File {
8181 parser . parseBoxHeaders ( ) ;
8282
8383 let sizeChange : number ;
84- let writePosition : number ;
8584
8685 // To avoid rewriting udta blocks which might not have been modified,
8786 // the code here will work correctly if:
@@ -96,6 +95,10 @@ export default class Mpeg4File extends File {
9695 udtaBox = IsoUserDataBox . fromEmpty ( ) ;
9796 }
9897
98+ const udtaHeader = udtaBox . parentTree [ udtaBox . parentTree . length - 1 ] ;
99+ const totalBoxSize = udtaHeader . totalBoxSize ;
100+ let writePosition = udtaHeader . position ;
101+
99102 const tagData = Mpeg4BoxRenderer . renderBox ( udtaBox ) ;
100103
101104 // If we don't have a "udta" box to overwrite...
@@ -112,10 +115,8 @@ export default class Mpeg4File extends File {
112115 }
113116 } else {
114117 // Overwrite the old box.
115- const udtaHeader = udtaBox . parentTree [ udtaBox . parentTree . length - 1 ] ;
116- sizeChange = tagData . length - udtaHeader . totalBoxSize ;
117- writePosition = udtaHeader . position ;
118- this . insert ( tagData , writePosition , udtaHeader . totalBoxSize ) ;
118+ sizeChange = tagData . length - totalBoxSize ;
119+ this . insert ( tagData , writePosition , totalBoxSize ) ;
119120
120121 // Overwrite the parent box sizes.
121122 for ( let i = udtaBox . parentTree . length - 2 ; i >= 0 ; i -- ) {
0 commit comments