New Defects reported by Coverity Scan for LibreOffice

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Please find the latest report on new defect(s) introduced to LibreOffice found with Coverity Scan.

53 new defect(s) introduced to LibreOffice found with Coverity Scan.


New defect(s) Reported-by: Coverity Scan
Showing 20 of 53 defect(s)


** CID 1521198:  Insecure data handling  (TAINTED_SCALAR)
/vcl/unx/generic/fontmanager/fontmanager.cxx: 254 in psp::PrintFontManager::analyzeFontFile(int, const rtl::OString &, const char *) const()


________________________________________________________________________________________________________
*** CID 1521198:  Insecure data handling  (TAINTED_SCALAR)
/vcl/unx/generic/fontmanager/fontmanager.cxx: 254 in psp::PrintFontManager::analyzeFontFile(int, const rtl::OString &, const char *) const()
248                     //https://u15810271.ct.sendgrid.net/ls/click?upn=HRESupC-2F2Czv4BOaCWWCy03K-2F9QL4mGS3H4UobiiNRB-2FzSYkBMAms3MjYB2IGSzKfAuqY0cYzepBSORwrEJCkA-3D-3DLZs8_OTq2XUZbbipYjyLSo6GRo-2FpVxQ9OzkDINu9UTS-2FQhSdO0F0jQniitrGlNxDIzPJifoBxogASetu34-2BU0UHBVuWY-2Bpxt9kEe94w0WJq2L7hWs1oVzVC92iVO8uClhrZftTsQVs-2BQ5miwAAMJvvndQgstSLBC86wZ32d6JypjiqmurtqACdlK-2BO4-2FeC41jmrQvBwT2pKGl7noBIWB37OAeGfxSzIToOMRfendVKu-2FYGxQ-3D
249                     const int nMaxFontsPossible = fileSize / 528;
250                     if (nLength > nMaxFontsPossible)
251                         nLength = nMaxFontsPossible;
252                 }
253     
>>>     CID 1521198:  Insecure data handling  (TAINTED_SCALAR)
>>>     Using tainted variable "nLength" as a loop boundary.
254                 for( int i = 0; i < nLength; i++ )
255                 {
256                     PrintFont aFont;
257                     aFont.m_nDirectory         = nDirID;
258                     aFont.m_aFontFile          = rFontFile;
259                     aFont.m_nCollectionEntry   = i;

** CID 1521197:  Memory - corruptions  (OVERRUN)


________________________________________________________________________________________________________
*** CID 1521197:  Memory - corruptions  (OVERRUN)
/workdir/UnpackedTarball/harfbuzz/src/hb-aat-layout-morx-table.hh: 911 in AAT::ChainSubtable<AAT::ObsoleteTypes>::dispatch<hb_sanitize_context_t>(T1*, T2 &&...) const()
905       {
906         unsigned int subtable_type = get_type ();
907         TRACE_DISPATCH (this, subtable_type);
908         switch (subtable_type) {
909         case Rearrangement:		return_trace (c->dispatch (u.rearrangement, std::forward<Ts> (ds)...));
910         case Contextual:		return_trace (c->dispatch (u.contextual, std::forward<Ts> (ds)...));
>>>     CID 1521197:  Memory - corruptions  (OVERRUN)
>>>     Overrunning struct type _ZN3AAT16LigatureSubtableINS_13ObsoleteTypesEEE of 14 bytes by passing it to a function which accesses it at byte offset 27.
911         case Ligature:		return_trace (c->dispatch (u.ligature, std::forward<Ts> (ds)...));
912         case Noncontextual:		return_trace (c->dispatch (u.noncontextual, std::forward<Ts> (ds)...));
913         case Insertion:		return_trace (c->dispatch (u.insertion, std::forward<Ts> (ds)...));
914         default:			return_trace (c->default_return_value ());
915         }
916       }

** CID 1521196:    (USE_AFTER_FREE)
/vcl/unx/generic/glyphs/freetype_glyphcache.cxx: 328 in FreetypeFontFace::GetHbFace() const()
/vcl/unx/generic/glyphs/freetype_glyphcache.cxx: 328 in FreetypeFontFace::GetHbFace() const()


________________________________________________________________________________________________________
*** CID 1521196:    (USE_AFTER_FREE)
/vcl/unx/generic/glyphs/freetype_glyphcache.cxx: 328 in FreetypeFontFace::GetHbFace() const()
322         if (!mpHbFace)
323         {
324             auto* pFileName = mpFreetypeFontInfo->GetFontFileName().getStr();
325             auto nIndex = mpFreetypeFontInfo->GetFontFaceIndex();
326             hb_blob_t* pHbBlob = hb_blob_create_from_file(pFileName);
327             mpHbFace = hb_face_create(pHbBlob, nIndex);
>>>     CID 1521196:    (USE_AFTER_FREE)
>>>     Passing freed pointer "pHbBlob" as an argument to "hb_blob_destroy".
328             hb_blob_destroy(pHbBlob);
329         }
330         return mpHbFace;
331     }
332     
333     hb_blob_t* FreetypeFontFace::GetHbTable(hb_tag_t nTag) const
/vcl/unx/generic/glyphs/freetype_glyphcache.cxx: 328 in FreetypeFontFace::GetHbFace() const()
322         if (!mpHbFace)
323         {
324             auto* pFileName = mpFreetypeFontInfo->GetFontFileName().getStr();
325             auto nIndex = mpFreetypeFontInfo->GetFontFaceIndex();
326             hb_blob_t* pHbBlob = hb_blob_create_from_file(pFileName);
327             mpHbFace = hb_face_create(pHbBlob, nIndex);
>>>     CID 1521196:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "pHbBlob" which has already been freed.
328             hb_blob_destroy(pHbBlob);
329         }
330         return mpHbFace;
331     }
332     
333     hb_blob_t* FreetypeFontFace::GetHbTable(hb_tag_t nTag) const

** CID 1521195:  Error handling issues  (NEGATIVE_RETURNS)
/workdir/UnpackedTarball/harfbuzz/src/hb-blob.cc: 744 in hb_blob_create_from_file_or_fail()


________________________________________________________________________________________________________
*** CID 1521195:  Error handling issues  (NEGATIVE_RETURNS)
/workdir/UnpackedTarball/harfbuzz/src/hb-blob.cc: 744 in hb_blob_create_from_file_or_fail()
738       FILE *fp;
739       int nFD;
740       int n;
741       if (sscanf (file_name, "/:FD:/%d%n", &nFD, &n) == 1 && file_name[n] == '\0')
742       {
743         lseek (nFD, 0, SEEK_SET);
>>>     CID 1521195:  Error handling issues  (NEGATIVE_RETURNS)
>>>     "dup(nFD)" is passed to a parameter that cannot be negative.
744         fp = fdopen (dup (nFD), "rb");
745       }
746       else
747       {
748         fp = fopen (file_name, "rb");
749       }

** CID 1521194:    (ORDER_REVERSAL)


________________________________________________________________________________________________________
*** CID 1521194:    (ORDER_REVERSAL)
/sfx2/source/notify/eventsupplier.cxx: 85 in SfxEvents_Impl::replaceByName(const rtl::OUString &, const com::sun::star::uno::Any &)()
79         }
80     
81         ::comphelper::NamedValueCollection aNormalizedDescriptor;
82         NormalizeMacro( aEventDescriptor, aNormalizedDescriptor, mpObjShell );
83     
84         OUString sType;
>>>     CID 1521194:    (ORDER_REVERSAL)
>>>     Calling "~OUString" acquires lock "_oslMutexImpl.mutex" while holding lock "std::unique_lock<std::mutex>._M_device" (count: 2 / 4).
85         if  (   ( aNormalizedDescriptor.size() == 1 )
86              &&  !aNormalizedDescriptor.has( PROP_EVENT_TYPE ) //TODO
87              &&  ( aNormalizedDescriptor.get( PROP_EVENT_TYPE ) >>= sType )
88              &&  ( sType.isEmpty() )
89             )
90         {
/sfx2/source/notify/eventsupplier.cxx: 85 in SfxEvents_Impl::replaceByName(const rtl::OUString &, const com::sun::star::uno::Any &)()
79         }
80     
81         ::comphelper::NamedValueCollection aNormalizedDescriptor;
82         NormalizeMacro( aEventDescriptor, aNormalizedDescriptor, mpObjShell );
83     
84         OUString sType;
>>>     CID 1521194:    (ORDER_REVERSAL)
>>>     Calling "operator >>=" acquires lock "_oslMutexImpl.mutex" while holding lock "std::unique_lock<std::mutex>._M_device" (count: 2 / 4).
85         if  (   ( aNormalizedDescriptor.size() == 1 )
86              &&  !aNormalizedDescriptor.has( PROP_EVENT_TYPE ) //TODO
87              &&  ( aNormalizedDescriptor.get( PROP_EVENT_TYPE ) >>= sType )
88              &&  ( sType.isEmpty() )
89             )
90         {
/sfx2/source/notify/eventsupplier.cxx: 101 in SfxEvents_Impl::replaceByName(const rtl::OUString &, const com::sun::star::uno::Any &)()
95             OSL_ENSURE( false, "legacy event assignment format detected" );
96             aNormalizedDescriptor.clear();
97         }
98     
99         if ( !aNormalizedDescriptor.empty() )
100         {
>>>     CID 1521194:    (ORDER_REVERSAL)
>>>     Calling "getPropertyValues" acquires lock "_oslMutexImpl.mutex" while holding lock "std::unique_lock<std::mutex>._M_device" (count: 2 / 4).
101             maEventData[nIndex] = aNormalizedDescriptor.getPropertyValues();
102         }
103         else
104         {
105             maEventData[nIndex] = {};
106         }
/sfx2/source/notify/eventsupplier.cxx: 105 in SfxEvents_Impl::replaceByName(const rtl::OUString &, const com::sun::star::uno::Any &)()
99         if ( !aNormalizedDescriptor.empty() )
100         {
101             maEventData[nIndex] = aNormalizedDescriptor.getPropertyValues();
102         }
103         else
104         {
>>>     CID 1521194:    (ORDER_REVERSAL)
>>>     Calling "Sequence" acquires lock "_oslMutexImpl.mutex" while holding lock "std::unique_lock<std::mutex>._M_device" (count: 2 / 4).
105             maEventData[nIndex] = {};
106         }
107     }
108     
109     
110     //  --- XNameAccess ---
/sfx2/source/notify/eventsupplier.cxx: 96 in SfxEvents_Impl::replaceByName(const rtl::OUString &, const com::sun::star::uno::Any &)()
90         {
91             // An empty event type means no binding. Therefore reset data
92             // to reflect that state.
93             // (that's for compatibility only. Nowadays, the Tools/Customize dialog should
94             // set an empty sequence to indicate the request for resetting the assignment.)
95             OSL_ENSURE( false, "legacy event assignment format detected" );
>>>     CID 1521194:    (ORDER_REVERSAL)
>>>     Calling "clear" acquires lock "_oslMutexImpl.mutex" while holding lock "std::unique_lock<std::mutex>._M_device" (count: 2 / 4).
96             aNormalizedDescriptor.clear();
97         }
98     
99         if ( !aNormalizedDescriptor.empty() )
100         {
101             maEventData[nIndex] = aNormalizedDescriptor.getPropertyValues();
/sfx2/source/notify/eventsupplier.cxx: 101 in SfxEvents_Impl::replaceByName(const rtl::OUString &, const com::sun::star::uno::Any &)()
95             OSL_ENSURE( false, "legacy event assignment format detected" );
96             aNormalizedDescriptor.clear();
97         }
98     
99         if ( !aNormalizedDescriptor.empty() )
100         {
>>>     CID 1521194:    (ORDER_REVERSAL)
>>>     Calling "~Sequence" acquires lock "_oslMutexImpl.mutex" while holding lock "std::unique_lock<std::mutex>._M_device" (count: 2 / 4).
101             maEventData[nIndex] = aNormalizedDescriptor.getPropertyValues();
102         }
103         else
104         {
105             maEventData[nIndex] = {};
106         }
/sfx2/source/notify/eventsupplier.cxx: 105 in SfxEvents_Impl::replaceByName(const rtl::OUString &, const com::sun::star::uno::Any &)()
99         if ( !aNormalizedDescriptor.empty() )
100         {
101             maEventData[nIndex] = aNormalizedDescriptor.getPropertyValues();
102         }
103         else
104         {
>>>     CID 1521194:    (ORDER_REVERSAL)
>>>     Calling "~Sequence" acquires lock "_oslMutexImpl.mutex" while holding lock "std::unique_lock<std::mutex>._M_device" (count: 2 / 4).
105             maEventData[nIndex] = {};
106         }
107     }
108     
109     
110     //  --- XNameAccess ---
/sfx2/source/notify/eventsupplier.cxx: 107 in SfxEvents_Impl::replaceByName(const rtl::OUString &, const com::sun::star::uno::Any &)()
101             maEventData[nIndex] = aNormalizedDescriptor.getPropertyValues();
102         }
103         else
104         {
105             maEventData[nIndex] = {};
106         }
>>>     CID 1521194:    (ORDER_REVERSAL)
>>>     Calling "~OUString" acquires lock "_oslMutexImpl.mutex" while holding lock "std::unique_lock<std::mutex>._M_device" (count: 2 / 4).
107     }
108     
109     
110     //  --- XNameAccess ---
111     
112     uno::Any SAL_CALL SfxEvents_Impl::getByName( const OUString& aName )

** CID 1521193:  Memory - illegal accesses  (NEGATIVE_RETURNS)
/workdir/UnpackedTarball/harfbuzz/src/hb-icu.cc: 222 in hb_icu_unicode_decompose(hb_unicode_funcs_t *, unsigned int, unsigned int *, unsigned int *, void *)()


________________________________________________________________________________________________________
*** CID 1521193:  Memory - illegal accesses  (NEGATIVE_RETURNS)
/workdir/UnpackedTarball/harfbuzz/src/hb-icu.cc: 222 in hb_icu_unicode_decompose(hb_unicode_funcs_t *, unsigned int, unsigned int *, unsigned int *, void *)()
216     				    ARRAY_LENGTH (decomposed), &icu_err);
217       if (U_FAILURE (icu_err) || len < 0) return false;
218     
219       len = u_countChar32 (decomposed, len);
220       if (len == 1)
221       {
>>>     CID 1521193:  Memory - illegal accesses  (NEGATIVE_RETURNS)
>>>     Using negative constant "-1" as an index to array "decomposed".
222         U16_GET_UNSAFE (decomposed, 0, *a);
223         *b = 0;
224         return *a != ab;
225       }
226       else if (len == 2)
227       {

** CID 1521192:  Error handling issues  (NEGATIVE_RETURNS)
/vcl/source/fontsubset/sft.cxx: 1085 in vcl::CountTTCFonts(const char *)()


________________________________________________________________________________________________________
*** CID 1521192:  Error handling issues  (NEGATIVE_RETURNS)
/vcl/source/fontsubset/sft.cxx: 1085 in vcl::CountTTCFonts(const char *)()
1079     #ifdef LINUX
1080         int nFD;
1081         int n;
1082         if (sscanf(fname, "/:FD:/%d%n", &nFD, &n) == 1 && fname[n] == '\0')
1083         {
1084             lseek(nFD, 0, SEEK_SET);
>>>     CID 1521192:  Error handling issues  (NEGATIVE_RETURNS)
>>>     "dup(nFD)" is passed to a parameter that cannot be negative.
1085             fd = fdopen(dup(nFD), "rb");
1086         }
1087         else
1088     #endif
1089             fd = fopen(fname, "rb");
1090         if( fd ) {

** CID 1521191:    (UNINIT)


________________________________________________________________________________________________________
*** CID 1521191:    (UNINIT)
/workdir/UnpackedTarball/harfbuzz/src/hb-vector.hh: 249 in hb_vector_t<CFF::cff1_private_dict_values_base_t<CFF::dict_val_t>, (bool)0>::realloc_vector<CFF::cff1_private_dict_values_base_t<CFF::dict_val_t>, (void *)0>(unsigned int)()
243         Type *new_array = (Type *) hb_malloc (new_allocated * sizeof (Type));
244         if (likely (new_array))
245         {
246           for (unsigned i = 0; i < length; i++)
247           {
248     	new (std::addressof (new_array[i])) Type ();
>>>     CID 1521191:    (UNINIT)
>>>     Using uninitialized value "(new_array + i)->values.length" when calling "operator =".
249     	new_array[i] = std::move (arrayZ[i]);
250     	arrayZ[i].~Type ();
251           }
252           hb_free (arrayZ);
253         }
254         return new_array;
/workdir/UnpackedTarball/harfbuzz/src/hb-vector.hh: 249 in hb_vector_t<hb_set_t, (bool)0>::realloc_vector<hb_set_t, (void *)0>(unsigned int)()
243         Type *new_array = (Type *) hb_malloc (new_allocated * sizeof (Type));
244         if (likely (new_array))
245         {
246           for (unsigned i = 0; i < length; i++)
247           {
248     	new (std::addressof (new_array[i])) Type ();
>>>     CID 1521191:    (UNINIT)
>>>     Using uninitialized value "(new_array + i)->s.s.population" when calling "operator =".
249     	new_array[i] = std::move (arrayZ[i]);
250     	arrayZ[i].~Type ();
251           }
252           hb_free (arrayZ);
253         }
254         return new_array;
/workdir/UnpackedTarball/harfbuzz/src/hb-vector.hh: 249 in hb_vector_t<CFF::cff2_private_dict_values_base_t<CFF::dict_val_t>, (bool)0>::realloc_vector<CFF::cff2_private_dict_values_base_t<CFF::dict_val_t>, (void *)0>(unsigned int)()
243         Type *new_array = (Type *) hb_malloc (new_allocated * sizeof (Type));
244         if (likely (new_array))
245         {
246           for (unsigned i = 0; i < length; i++)
247           {
248     	new (std::addressof (new_array[i])) Type ();
>>>     CID 1521191:    (UNINIT)
>>>     Using uninitialized value "(new_array + i)->values.length" when calling "operator =".
249     	new_array[i] = std::move (arrayZ[i]);
250     	arrayZ[i].~Type ();
251           }
252           hb_free (arrayZ);
253         }
254         return new_array;
/workdir/UnpackedTarball/harfbuzz/src/hb-vector.hh: 249 in hb_vector_t<hb_set_t, (bool)0>::realloc_vector<hb_set_t, (void *)0>(unsigned int)()
243         Type *new_array = (Type *) hb_malloc (new_allocated * sizeof (Type));
244         if (likely (new_array))
245         {
246           for (unsigned i = 0; i < length; i++)
247           {
248     	new (std::addressof (new_array[i])) Type ();
>>>     CID 1521191:    (UNINIT)
>>>     Using uninitialized value "(new_array + i)->s.s.population" when calling "operator =".
249     	new_array[i] = std::move (arrayZ[i]);
250     	arrayZ[i].~Type ();
251           }
252           hb_free (arrayZ);
253         }
254         return new_array;
/workdir/UnpackedTarball/harfbuzz/src/hb-vector.hh: 249 in hb_vector_t<hb_set_t, (bool)0>::realloc_vector<hb_set_t, (void *)0>(unsigned int)()
243         Type *new_array = (Type *) hb_malloc (new_allocated * sizeof (Type));
244         if (likely (new_array))
245         {
246           for (unsigned i = 0; i < length; i++)
247           {
248     	new (std::addressof (new_array[i])) Type ();
>>>     CID 1521191:    (UNINIT)
>>>     Using uninitialized value "(new_array + i)->s.s.successful" when calling "operator =".
249     	new_array[i] = std::move (arrayZ[i]);
250     	arrayZ[i].~Type ();
251           }
252           hb_free (arrayZ);
253         }
254         return new_array;
/workdir/UnpackedTarball/harfbuzz/src/hb-vector.hh: 249 in hb_vector_t<CFF::cff2_font_dict_values_t, (bool)0>::realloc_vector<CFF::cff2_font_dict_values_t, (void *)0>(unsigned int)()
243         Type *new_array = (Type *) hb_malloc (new_allocated * sizeof (Type));
244         if (likely (new_array))
245         {
246           for (unsigned i = 0; i < length; i++)
247           {
248     	new (std::addressof (new_array[i])) Type ();
>>>     CID 1521191:    (UNINIT)
>>>     Using uninitialized value "(new_array + i)->values.length" when calling "operator =".
249     	new_array[i] = std::move (arrayZ[i]);
250     	arrayZ[i].~Type ();
251           }
252           hb_free (arrayZ);
253         }
254         return new_array;
/workdir/UnpackedTarball/harfbuzz/src/hb-vector.hh: 249 in hb_vector_t<CFF::cff1_font_dict_values_t, (bool)0>::realloc_vector<CFF::cff1_font_dict_values_t, (void *)0>(unsigned int)()
243         Type *new_array = (Type *) hb_malloc (new_allocated * sizeof (Type));
244         if (likely (new_array))
245         {
246           for (unsigned i = 0; i < length; i++)
247           {
248     	new (std::addressof (new_array[i])) Type ();
>>>     CID 1521191:    (UNINIT)
>>>     Using uninitialized value "(new_array + i)->values.length" when calling "operator =".
249     	new_array[i] = std::move (arrayZ[i]);
250     	arrayZ[i].~Type ();
251           }
252           hb_free (arrayZ);
253         }
254         return new_array;

** CID 1521190:  Memory - corruptions  (USE_AFTER_FREE)
/vcl/source/gdi/pdfwriter_impl.cxx: 6267 in vcl::PDFWriterImpl::registerGlyph(unsigned int, const vcl::font::PhysicalFontFace *, const LogicalFontInstance *, const std::vector<char16_t, std::allocator<char16_t>> &, int, unsigned char &, int &)()


________________________________________________________________________________________________________
*** CID 1521190:  Memory - corruptions  (USE_AFTER_FREE)
/vcl/source/gdi/pdfwriter_impl.cxx: 6267 in vcl::PDFWriterImpl::registerGlyph(unsigned int, const vcl::font::PhysicalFontFace *, const LogicalFontInstance *, const std::vector<char16_t, std::allocator<char16_t>> &, int, unsigned char &, int &)()
6261     
6262                     // add new glyph to font mapping
6263                     Glyph& rNewGlyph = rSubset.m_aMapping[nFontGlyphId];
6264                     rNewGlyph.m_nFontID = nMappedFontObject;
6265                     rNewGlyph.m_nSubsetGlyphID = nNewId;
6266                 }
>>>     CID 1521190:  Memory - corruptions  (USE_AFTER_FREE)
>>>     Calling "~RawFontData" frees pointer "aBitmap.mpBlob" which has already been freed.
6267                 return;
6268             }
6269         }
6270     
6271         // If we reach here then the glyph has no color layers.
6272         registerSimpleGlyph(nFontGlyphId, pFace, rCodeUnits, nGlyphWidth, nMappedGlyph,

** CID 1521189:  Error handling issues  (CHECKED_RETURN)
/workdir/UnpackedTarball/harfbuzz/src/hb-shape.cc: 195 in hb_shape()


________________________________________________________________________________________________________
*** CID 1521189:  Error handling issues  (CHECKED_RETURN)
/workdir/UnpackedTarball/harfbuzz/src/hb-shape.cc: 195 in hb_shape()
189     void
190     hb_shape (hb_font_t           *font,
191     	  hb_buffer_t         *buffer,
192     	  const hb_feature_t  *features,
193     	  unsigned int         num_features)
194     {
>>>     CID 1521189:  Error handling issues  (CHECKED_RETURN)
>>>     Calling "hb_shape_full" without checking return value (as is done elsewhere 4 out of 5 times).
195       hb_shape_full (font, buffer, features, num_features, nullptr);
196     }
197     
198     

** CID 1521188:  Uninitialized variables  (UNINIT)


________________________________________________________________________________________________________
*** CID 1521188:  Uninitialized variables  (UNINIT)
/extensions/source/update/check/updatecheck.cxx: 666 in <unnamed>::DownloadThread::run()()
660     
661                     if( n < SAL_N_ELEMENTS(nRetryInterval) )
662                         ++n;
663     
664                     tv.Seconds = nRetryInterval[n-1];
665                 }
>>>     CID 1521188:  Uninitialized variables  (UNINIT)
>>>     Using uninitialized value "tv.Nanosec" when calling "wait".
666                 m_aCondition.wait(&tv);
667             }
668             else
669             {
670                 // reset wait period after successful download
671                 n=0;

** CID 1521187:  Memory - corruptions  (OVERRUN)


________________________________________________________________________________________________________
*** CID 1521187:  Memory - corruptions  (OVERRUN)
/workdir/UnpackedTarball/harfbuzz/src/hb-aat-layout-morx-table.hh: 913 in AAT::ChainSubtable<AAT::ObsoleteTypes>::dispatch<hb_sanitize_context_t>(T1*, T2 &&...) const()
907         TRACE_DISPATCH (this, subtable_type);
908         switch (subtable_type) {
909         case Rearrangement:		return_trace (c->dispatch (u.rearrangement, std::forward<Ts> (ds)...));
910         case Contextual:		return_trace (c->dispatch (u.contextual, std::forward<Ts> (ds)...));
911         case Ligature:		return_trace (c->dispatch (u.ligature, std::forward<Ts> (ds)...));
912         case Noncontextual:		return_trace (c->dispatch (u.noncontextual, std::forward<Ts> (ds)...));
>>>     CID 1521187:  Memory - corruptions  (OVERRUN)
>>>     Overrunning struct type _ZN3AAT17InsertionSubtableINS_13ObsoleteTypesEEE of 10 bytes by passing it to a function which accesses it at byte offset 19.
913         case Insertion:		return_trace (c->dispatch (u.insertion, std::forward<Ts> (ds)...));
914         default:			return_trace (c->default_return_value ());
915         }
916       }
917     
918       bool apply (hb_aat_apply_context_t *c) const

** CID 1518616:  Control flow issues  (UNREACHABLE)
/workdir/UnpackedTarball/harfbuzz/src/hb-algs.hh: 885 in hb_unsigned_mul_overflows(unsigned int, unsigned int, unsigned int *)()


________________________________________________________________________________________________________
*** CID 1518616:  Control flow issues  (UNREACHABLE)
/workdir/UnpackedTarball/harfbuzz/src/hb-algs.hh: 885 in hb_unsigned_mul_overflows(unsigned int, unsigned int, unsigned int *)()
879       unsigned stack_result;
880       if (!result)
881         result = &stack_result;
882       return __builtin_mul_overflow (count, size, result);
883     #endif
884     
>>>     CID 1518616:  Control flow issues  (UNREACHABLE)
>>>     This code cannot be reached: "if (result)
  *result = cou...".
885       if (result)
886         *result = count * size;
887       return (size > 0) && (count >= ((unsigned int) -1) / size);
888     }
889     
890     

** CID 1515939:  Performance inefficiencies  (AUTO_CAUSES_COPY)
/workdir/UnpackedTarball/harfbuzz/src/hb-face.cc: 682 in _hb_face_builder_data_destroy(void *)()


________________________________________________________________________________________________________
*** CID 1515939:  Performance inefficiencies  (AUTO_CAUSES_COPY)
/workdir/UnpackedTarball/harfbuzz/src/hb-face.cc: 682 in _hb_face_builder_data_destroy(void *)()
676     
677     static void
678     _hb_face_builder_data_destroy (void *user_data)
679     {
680       hb_face_builder_data_t *data = (hb_face_builder_data_t *) user_data;
681     
>>>     CID 1515939:  Performance inefficiencies  (AUTO_CAUSES_COPY)
>>>     Using the "auto" keyword without an "&" causes the copy of an object of type face_table_info_t.
682       for (auto info : data->tables.values())
683         hb_blob_destroy (info.data);
684     
685       data->tables.fini ();
686     
687       hb_free (data);

** CID 1515938:  Performance inefficiencies  (AUTO_CAUSES_COPY)
/workdir/UnpackedTarball/harfbuzz/src/hb-face.cc: 697 in _hb_face_builder_data_reference_blob(hb_face_builder_data_t *)()


________________________________________________________________________________________________________
*** CID 1515938:  Performance inefficiencies  (AUTO_CAUSES_COPY)
/workdir/UnpackedTarball/harfbuzz/src/hb-face.cc: 697 in _hb_face_builder_data_reference_blob(hb_face_builder_data_t *)()
691     _hb_face_builder_data_reference_blob (hb_face_builder_data_t *data)
692     {
693     
694       unsigned int table_count = data->tables.get_population ();
695       unsigned int face_length = table_count * 16 + 12;
696     
>>>     CID 1515938:  Performance inefficiencies  (AUTO_CAUSES_COPY)
>>>     Using the "auto" keyword without an "&" causes the copy of an object of type face_table_info_t.
697       for (auto info : data->tables.values())
698         face_length += hb_ceil_to_4 (hb_blob_get_length (info.data));
699     
700       char *buf = (char *) hb_malloc (face_length);
701       if (unlikely (!buf))
702         return nullptr;

** CID 1513074:    (USE_AFTER_MOVE)
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::List16OfOffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, (unsigned int)2>> *, unsigned int>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ChainContextFormat1_4<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ContextFormat2_5<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::ClipRecord, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::ClipList *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::MathKernInfoRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::MathKernInfo *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ChainContextFormat3 *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::MathValueRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::MathTopAccentAttachment *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ChainContextFormat2_5<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::BaseGlyphPaintRecord, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::BaseGlyphList *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::VariationSelectorRecord, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::CmapSubtableFormat14 *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::Layout::GPOS_impl::MarkRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GPOS_impl::MarkArray *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, (unsigned int)4>, (bool)1>, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::sbix *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::BaseScriptRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::BaseScriptList *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::BaseCoord, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::BaseValues *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::RuleSet<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::BitmapSizeTable, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::CBLC *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes> *, OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>::sanitize_closure_t *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ContextFormat1_4<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, (unsigned int)4>, (bool)1>, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::LayerList *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ChainRuleSet<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::FeatMinMaxRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::MinMax *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::EncodingRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::cmap *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GSUB_impl::ReverseChainSingleSubstFormat1 *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<CFF::FDSelect3_4_Range<OT::IntType<unsigned int, (unsigned int)4>, OT::IntType<unsigned short, (unsigned int)2>>, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<std::nullptr_t, unsigned int &>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::BaseLangSysRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::BaseScript *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<CFF::FDSelect3_4_Range<OT::IntType<unsigned short, (unsigned int)2>, OT::IntType<unsigned char, (unsigned int)1>>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<std::nullptr_t, unsigned int &>(hb_sanitize_context_t *, T1 &&...) const()
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::Layout::GPOS_impl::EntryExitRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GPOS_impl::CursivePosFormat1 *>(hb_sanitize_context_t *, T1 &&...) const()


________________________________________________________________________________________________________
*** CID 1513074:    (USE_AFTER_MOVE)
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::List16OfOffsetTo<OT::Layout::GPOS_impl::AnchorMatrix, OT::IntType<unsigned short, (unsigned int)2>> *, unsigned int>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ChainContextFormat1_4<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ContextFormat2_5<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::ClipRecord, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::ClipList *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::MathKernInfoRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::MathKernInfo *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ChainContextFormat3 *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::MathValueRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::MathTopAccentAttachment *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::ChainRuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ChainContextFormat2_5<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::BaseGlyphPaintRecord, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::BaseGlyphList *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::VariationSelectorRecord, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::CmapSubtableFormat14 *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::Layout::GPOS_impl::MarkRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GPOS_impl::MarkArray *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::SBIXStrike, OT::IntType<unsigned int, (unsigned int)4>, (bool)1>, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::sbix *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::BaseScriptRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::BaseScriptList *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::BaseCoord, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::BaseValues *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::AlternateSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GSUB_impl::AlternateSubstFormat1_2<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Rule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::RuleSet<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::BitmapSizeTable, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::CBLC *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GPOS_impl::PairPosFormat1_3<OT::Layout::SmallTypes> *, OT::Layout::GPOS_impl::PairSet<OT::Layout::SmallTypes>::sanitize_closure_t *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Ligature<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GSUB_impl::LigatureSet<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::RuleSet<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ContextFormat1_4<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Paint, OT::IntType<unsigned int, (unsigned int)4>, (bool)1>, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<const OT::LayerList *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::ChainRule<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::ChainRuleSet<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::FeatMinMaxRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::MinMax *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::EncodingRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::cmap *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::Common::Coverage, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GSUB_impl::ReverseChainSingleSubstFormat1 *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<CFF::FDSelect3_4_Range<OT::IntType<unsigned int, (unsigned int)4>, OT::IntType<unsigned short, (unsigned int)2>>, OT::IntType<unsigned int, (unsigned int)4>>::sanitize<std::nullptr_t, unsigned int &>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::BaseLangSysRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::BaseScript *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::OffsetTo<OT::Layout::GSUB_impl::Sequence<OT::Layout::SmallTypes>, OT::IntType<unsigned short, (unsigned int)2>, (bool)1>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GSUB_impl::MultipleSubstFormat1_2<OT::Layout::SmallTypes> *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<CFF::FDSelect3_4_Range<OT::IntType<unsigned short, (unsigned int)2>, OT::IntType<unsigned char, (unsigned int)1>>, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<std::nullptr_t, unsigned int &>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const
/workdir/UnpackedTarball/harfbuzz/src/hb-open-type.hh: 729 in OT::ArrayOf<OT::Layout::GPOS_impl::EntryExitRecord, OT::IntType<unsigned short, (unsigned int)2>>::sanitize<const OT::Layout::GPOS_impl::CursivePosFormat1 *>(hb_sanitize_context_t *, T1 &&...) const()
723       {
724         TRACE_SANITIZE (this);
725         if (unlikely (!sanitize_shallow (c))) return_trace (false);
726         if (!sizeof... (Ts) && hb_is_trivially_copyable(Type)) return_trace (true);
727         unsigned int count = len;
728         for (unsigned int i = 0; i < count; i++)
>>>     CID 1513074:    (USE_AFTER_MOVE)
>>>     "ds" is used after it has been already moved.
729           if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
730     	return_trace (false);
731         return_trace (true);
732       }
733     
734       bool sanitize_shallow (hb_sanitize_context_t *c) const

** CID 1513058:    (AUTO_CAUSES_COPY)
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh: 85 in OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>::serialize<hb_sorted_array_t<const OT::HBGlyphID16>, (void *)0>(hb_serialize_context_t *, T1)()
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh: 98 in OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>::serialize<hb_sorted_array_t<const OT::HBGlyphID16>, (void *)0>(hb_serialize_context_t *, T1)()
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh: 85 in OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>::serialize<hb_map_iter_t<hb_zip_iter_t<hb_sorted_array_t<OT::HBGlyphID16>, hb_array_t<OT::HBGlyphID16>>, const [unnamed type of 'hb_first'] &, (hb_function_sortedness_t)1, (void *)0>, (void *)0>(hb_serialize_context_t *, T1)()
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh: 98 in OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>::serialize<hb_map_iter_t<hb_zip_iter_t<hb_sorted_array_t<OT::HBGlyphID16>, hb_array_t<OT::HBGlyphID16>>, const [unnamed type of 'hb_first'] &, (hb_function_sortedness_t)1, (void *)0>, (void *)0>(hb_serialize_context_t *, T1)()


________________________________________________________________________________________________________
*** CID 1513058:    (AUTO_CAUSES_COPY)
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh: 85 in OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>::serialize<hb_sorted_array_t<const OT::HBGlyphID16>, (void *)0>(hb_serialize_context_t *, T1)()
79       {
80         TRACE_SERIALIZE (this);
81         if (unlikely (!c->extend_min (this))) return_trace (false);
82     
83         unsigned num_ranges = 0;
84         hb_codepoint_t last = (hb_codepoint_t) -2;
>>>     CID 1513058:    (AUTO_CAUSES_COPY)
>>>     Using the "auto" keyword without an "&" causes the copy of an object of type HBGlyphID16.
85         for (auto g: glyphs)
86         {
87           if (last + 1 != g)
88             num_ranges++;
89           last = g;
90         }
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh: 98 in OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>::serialize<hb_sorted_array_t<const OT::HBGlyphID16>, (void *)0>(hb_serialize_context_t *, T1)()
92         if (unlikely (!rangeRecord.serialize (c, num_ranges))) return_trace (false);
93         if (!num_ranges) return_trace (true);
94     
95         unsigned count = 0;
96         unsigned range = (unsigned) -1;
97         last = (hb_codepoint_t) -2;
>>>     CID 1513058:    (AUTO_CAUSES_COPY)
>>>     Using the "auto" keyword without an "&" causes the copy of an object of type HBGlyphID16.
98         for (auto g: glyphs)
99         {
100           if (last + 1 != g)
101           {
102             range++;
103             rangeRecord[range].first = g;
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh: 85 in OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>::serialize<hb_map_iter_t<hb_zip_iter_t<hb_sorted_array_t<OT::HBGlyphID16>, hb_array_t<OT::HBGlyphID16>>, const [unnamed type of 'hb_first'] &, (hb_function_sortedness_t)1, (void *)0>, (void *)0>(hb_serialize_context_t *, T1)()
79       {
80         TRACE_SERIALIZE (this);
81         if (unlikely (!c->extend_min (this))) return_trace (false);
82     
83         unsigned num_ranges = 0;
84         hb_codepoint_t last = (hb_codepoint_t) -2;
>>>     CID 1513058:    (AUTO_CAUSES_COPY)
>>>     Using the "auto" keyword without an "&" causes the copy of an object of type HBGlyphID16.
85         for (auto g: glyphs)
86         {
87           if (last + 1 != g)
88             num_ranges++;
89           last = g;
90         }
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/CoverageFormat2.hh: 98 in OT::Layout::Common::CoverageFormat2_4<OT::Layout::SmallTypes>::serialize<hb_map_iter_t<hb_zip_iter_t<hb_sorted_array_t<OT::HBGlyphID16>, hb_array_t<OT::HBGlyphID16>>, const [unnamed type of 'hb_first'] &, (hb_function_sortedness_t)1, (void *)0>, (void *)0>(hb_serialize_context_t *, T1)()
92         if (unlikely (!rangeRecord.serialize (c, num_ranges))) return_trace (false);
93         if (!num_ranges) return_trace (true);
94     
95         unsigned count = 0;
96         unsigned range = (unsigned) -1;
97         last = (hb_codepoint_t) -2;
>>>     CID 1513058:    (AUTO_CAUSES_COPY)
>>>     Using the "auto" keyword without an "&" causes the copy of an object of type HBGlyphID16.
98         for (auto g: glyphs)
99         {
100           if (last + 1 != g)
101           {
102             range++;
103             rangeRecord[range].first = g;

** CID 1513048:  Performance inefficiencies  (AUTO_CAUSES_COPY)
/workdir/UnpackedTarball/harfbuzz/src/hb-map.hh: 300 in hb_hashmap_t<unsigned int, unsigned int, (bool)1>::is_equal(const hb_hashmap_t<unsigned int, unsigned int, (bool)1>&) const()


________________________________________________________________________________________________________
*** CID 1513048:  Performance inefficiencies  (AUTO_CAUSES_COPY)
/workdir/UnpackedTarball/harfbuzz/src/hb-map.hh: 300 in hb_hashmap_t<unsigned int, unsigned int, (bool)1>::is_equal(const hb_hashmap_t<unsigned int, unsigned int, (bool)1>&) const()
294       }
295     
296       bool is_equal (const hb_hashmap_t &other) const
297       {
298         if (population != other.population) return false;
299     
>>>     CID 1513048:  Performance inefficiencies  (AUTO_CAUSES_COPY)
>>>     Using the "auto" keyword without an "&" causes the copy of an object of type hb_pair_t.
300         for (auto pair : iter ())
301           if (other.get (pair.first) != pair.second)
302             return false;
303     
304         return true;
305       }

** CID 1513044:    (AUTO_CAUSES_COPY)
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/Coverage.hh: 119 in OT::Layout::Common::Coverage::serialize<hb_sorted_array_t<const OT::HBGlyphID16>, (void *)0>(hb_serialize_context_t *, T1)()
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/Coverage.hh: 119 in OT::Layout::Common::Coverage::serialize<hb_map_iter_t<hb_zip_iter_t<hb_sorted_array_t<OT::HBGlyphID16>, hb_array_t<OT::HBGlyphID16>>, const [unnamed type of 'hb_first'] &, (hb_function_sortedness_t)1, (void *)0>, (void *)0>(hb_serialize_context_t *, T1)()


________________________________________________________________________________________________________
*** CID 1513044:    (AUTO_CAUSES_COPY)
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/Coverage.hh: 119 in OT::Layout::Common::Coverage::serialize<hb_sorted_array_t<const OT::HBGlyphID16>, (void *)0>(hb_serialize_context_t *, T1)()
113         TRACE_SERIALIZE (this);
114         if (unlikely (!c->extend_min (this))) return_trace (false);
115     
116         unsigned count = 0;
117         unsigned num_ranges = 0;
118         hb_codepoint_t last = (hb_codepoint_t) -2;
>>>     CID 1513044:    (AUTO_CAUSES_COPY)
>>>     Using the "auto" keyword without an "&" causes the copy of an object of type HBGlyphID16.
119         for (auto g: glyphs)
120         {
121           if (last + 1 != g)
122             num_ranges++;
123           last = g;
124           count++;
/workdir/UnpackedTarball/harfbuzz/src/OT/Layout/Common/Coverage.hh: 119 in OT::Layout::Common::Coverage::serialize<hb_map_iter_t<hb_zip_iter_t<hb_sorted_array_t<OT::HBGlyphID16>, hb_array_t<OT::HBGlyphID16>>, const [unnamed type of 'hb_first'] &, (hb_function_sortedness_t)1, (void *)0>, (void *)0>(hb_serialize_context_t *, T1)()
113         TRACE_SERIALIZE (this);
114         if (unlikely (!c->extend_min (this))) return_trace (false);
115     
116         unsigned count = 0;
117         unsigned num_ranges = 0;
118         hb_codepoint_t last = (hb_codepoint_t) -2;
>>>     CID 1513044:    (AUTO_CAUSES_COPY)
>>>     Using the "auto" keyword without an "&" causes the copy of an object of type HBGlyphID16.
119         for (auto g: glyphs)
120         {
121           if (last + 1 != g)
122             num_ranges++;
123           last = g;
124           count++;

** CID 1513041:    (USE_AFTER_FREE)
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<AAT::trak>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cff2>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::cff2>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::OpenTypeFontFile>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::OS2>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::hhea>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cff2>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::maxp>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::cmap>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::MATH>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::cff1>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::BASE>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::hhea>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::hmtxvmtx<OT::vmtx, OT::vhea, OT::VVAR>>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::name>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::hmtxvmtx<OT::hmtx, OT::hhea, OT::HVAR>>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::post>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::kern>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::loca>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::GDEF>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::kerx>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::OpenTypeFontFile>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cmap>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::GDEF>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<AAT::morx>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::kern>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::STAT>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::hmtxvmtx<OT::hmtx, OT::hhea, OT::HVAR>>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::OpenTypeFontFile>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::cff2>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::BASE>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<AAT::ltag>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::maxp>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::vhea>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::name>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<AAT::trak>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::name>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cmap>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::hmtxvmtx<OT::vmtx, OT::vhea, OT::VVAR>>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::HVAR>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::kern>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::post>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::GDEF>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::vhea>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::MATH>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::trak>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::vhea>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::ltag>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::BASE>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::kerx>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::post>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::loca>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::HVAR>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::cmap>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::hhea>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::Layout::GPOS>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::post>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::OpenTypeFontFile>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::glyf>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::BASE>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::vhea>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::STAT>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::ltag>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::trak>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::kern>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::MATH>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<AAT::ankr>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cff1>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::glyf>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<AAT::ltag>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::STAT>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::cff1>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::OS2>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::OS2>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cff1>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::Layout::GSUB>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::maxp>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::OS2>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::HVAR>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::maxp>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::MATH>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::GDEF>(hb_blob_t *)()
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::name>(hb_blob_t *)()


________________________________________________________________________________________________________
*** CID 1513041:    (USE_AFTER_FREE)
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<AAT::trak>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cff2>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::cff2>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::OpenTypeFontFile>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::OS2>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::hhea>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cff2>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::maxp>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::cmap>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::MATH>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::cff1>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::BASE>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::hhea>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::hmtxvmtx<OT::vmtx, OT::vhea, OT::VVAR>>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::name>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::hmtxvmtx<OT::hmtx, OT::hhea, OT::HVAR>>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::post>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::kern>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::loca>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::GDEF>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::kerx>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::OpenTypeFontFile>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cmap>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::GDEF>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<AAT::morx>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::kern>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::STAT>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::hmtxvmtx<OT::hmtx, OT::hhea, OT::HVAR>>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::OpenTypeFontFile>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::cff2>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::BASE>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<AAT::ltag>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::maxp>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::vhea>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::name>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<AAT::trak>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::name>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cmap>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::hmtxvmtx<OT::vmtx, OT::vhea, OT::VVAR>>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::HVAR>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::kern>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::post>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::GDEF>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::vhea>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::MATH>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::trak>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::vhea>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::ltag>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::BASE>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::kerx>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::post>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::loca>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::HVAR>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::cmap>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::hhea>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::Layout::GPOS>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::post>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::OpenTypeFontFile>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::glyf>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::BASE>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::vhea>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::STAT>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::ltag>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<AAT::trak>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::kern>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::MATH>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<AAT::ankr>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cff1>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::glyf>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<AAT::ltag>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::STAT>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::cff1>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::OS2>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::OS2>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::cff1>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 346 in hb_sanitize_context_t::sanitize_blob<OT::Layout::GSUB>(hb_blob_t *)()
340     
341         start_processing ();
342     
343         if (unlikely (!start))
344         {
345           end_processing ();
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Using freed pointer "blob".
346           return blob;
347         }
348     
349         Type *t = reinterpret_cast<Type *> (const_cast<char *> (start));
350     
351         sane = t->sanitize (this);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::maxp>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::OS2>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::HVAR>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::maxp>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Calling "hb_blob_destroy" frees pointer "blob" which has already been freed.
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::MATH>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 393 in hb_sanitize_context_t::sanitize_blob<OT::GDEF>(hb_blob_t *)()
387         {
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_destroy".
393           hb_blob_destroy (blob);
394           return hb_blob_get_empty ();
395         }
396       }
397     
398       template <typename Type>
/workdir/UnpackedTarball/harfbuzz/src/hb-sanitize.hh: 388 in hb_sanitize_context_t::sanitize_blob<OT::name>(hb_blob_t *)()
382     
383         end_processing ();
384     
385         DEBUG_MSG_FUNC (SANITIZE, start, sane ? "PASSED" : "FAILED");
386         if (sane)
387         {
>>>     CID 1513041:    (USE_AFTER_FREE)
>>>     Passing freed pointer "blob" as an argument to "hb_blob_make_immutable".
388           hb_blob_make_immutable (blob);
389           return blob;
390         }
391         else
392         {
393           hb_blob_destroy (blob);


________________________________________________________________________________________________________
To view the defects in Coverity Scan visit, https://u15810271.ct.sendgrid.net/ls/click?upn=HRESupC-2F2Czv4BOaCWWCy7my0P0qcxCbhZ31OYv50ypSs1kiFPuCn2xFdlMIFBirii0zZ9j2-2F9F2XPBcBm2BNgi9duPy3v-2FzgFDd2LJ-2BDKI-3Dl9r3_OTq2XUZbbipYjyLSo6GRo-2FpVxQ9OzkDINu9UTS-2FQhSdO0F0jQniitrGlNxDIzPJifoBxogASetu34-2BU0UHBVuUSIk4QSdpefpBaleEzFI7TeAeIcuk00dcKJJ-2BJDCzzDJyfYcBE9oMN-2BVnq7hnnwp10QaHtoY9IbhD2Xrv16uQd9tXr93Oy-2Fp2AyT6bGGM-2BpupFwMeCWyDBjwMDrZbiDQVxRE6wMkWHQ2Bb4G3b3z4I-3D




[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]     [Photo]

  Powered by Linux