<feed xmlns='http://www.w3.org/2005/Atom'>
<title>jellyfin/Emby.Naming/Video/Format3DParser.cs, branch v12.0-rc4</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://git.b0n.dev/jellyfin/atom?h=v12.0-rc4</id>
<link rel='self' href='https://git.b0n.dev/jellyfin/atom?h=v12.0-rc4'/>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/'/>
<updated>2026-07-12T10:11:29Z</updated>
<entry>
<title>Fix 3D format detection when the tag is the last token of the path</title>
<updated>2026-07-12T10:11:29Z</updated>
<author>
<name>TowyTowy</name>
<email>towy@airreps.link</email>
</author>
<published>2026-07-12T10:11:29Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=5be844e1b755bca6b8dd23509f96b7040b16f2f3'/>
<id>urn:sha1:5be844e1b755bca6b8dd23509f96b7040b16f2f3</id>
<content type='text'>
Format3DParser drops the last character of the final path token: when
IndexOfAny finds no more delimiters, the slice is taken with
'index = path.Length - 1', so e.g. "hsbs" is compared as "hsb" and
never matches any rule.

File paths are unaffected because the extension is always the final
token, but directory based media have no extension. For DVD/BluRay
folder rips (BaseVideoResolver parses the folder path via
Set3DFormat), a trailing 3D tag such as
"Gravity (2013) 3d hsbs/BDMV" is silently ignored and Video3DFormat
is never set.

This is a regression from 42a2cc174 which replaced the string.Split
based FlagParser with span slicing; the Split implementation kept the
final token intact.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Update StyleCop</title>
<updated>2021-12-24T17:28:27Z</updated>
<author>
<name>Bond_009</name>
<email>bond.009@outlook.com</email>
</author>
<published>2021-12-24T17:28:27Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=cbfa355e31ec7a78ef73bbde5566fb2b3424363e'/>
<id>urn:sha1:cbfa355e31ec7a78ef73bbde5566fb2b3424363e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use stackalloc in Format3DParser.Parse</title>
<updated>2021-06-11T22:16:33Z</updated>
<author>
<name>cvium</name>
<email>clausvium@gmail.com</email>
</author>
<published>2021-06-11T22:16:33Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=66de8428960ec751521386c27e37909cf73add9e'/>
<id>urn:sha1:66de8428960ec751521386c27e37909cf73add9e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove some unnecessary allocations</title>
<updated>2021-05-23T22:30:41Z</updated>
<author>
<name>cvium</name>
<email>clausvium@gmail.com</email>
</author>
<published>2021-05-23T22:30:41Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=42a2cc1747c7859c63334a7a45792e0af1410e1a'/>
<id>urn:sha1:42a2cc1747c7859c63334a7a45792e0af1410e1a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Xml-doc part2</title>
<updated>2020-11-10T18:23:10Z</updated>
<author>
<name>Stepan</name>
<email>ste.martinek+git@gmail.com</email>
</author>
<published>2020-11-10T18:23:10Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=158eff62d75db2d5e6e6f09fbe6e03eac607fc56'/>
<id>urn:sha1:158eff62d75db2d5e6e6f09fbe6e03eac607fc56</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Xml-doc part1</title>
<updated>2020-11-10T16:11:48Z</updated>
<author>
<name>Stepan</name>
<email>ste.martinek+git@gmail.com</email>
</author>
<published>2020-11-10T16:11:48Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=693760e38ae51b9267f9383c3957df742bb136a6'/>
<id>urn:sha1:693760e38ae51b9267f9383c3957df742bb136a6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Re-Sharper inspection issues</title>
<updated>2020-11-01T10:19:22Z</updated>
<author>
<name>Stepan</name>
<email>ste.martinek+git@gmail.com</email>
</author>
<published>2020-11-01T10:19:22Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=60b49e67eafd356d1276f43de1a3f1f2fe52fe3f'/>
<id>urn:sha1:60b49e67eafd356d1276f43de1a3f1f2fe52fe3f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Enable nullable in Emby.Naming</title>
<updated>2020-11-01T09:47:31Z</updated>
<author>
<name>Stepan</name>
<email>ste.martinek+git@gmail.com</email>
</author>
<published>2020-11-01T09:47:31Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=59619b6ea74ab555977fd213f6ee5737897b0fbd'/>
<id>urn:sha1:59619b6ea74ab555977fd213f6ee5737897b0fbd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix some warnings</title>
<updated>2020-02-23T11:11:43Z</updated>
<author>
<name>Bond_009</name>
<email>bond.009@outlook.com</email>
</author>
<published>2020-02-23T11:11:43Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=07cc4be6a747cfea40ee7a540385d6d8f38de726'/>
<id>urn:sha1:07cc4be6a747cfea40ee7a540385d6d8f38de726</id>
<content type='text'>
* Add analyzers to MediaBrowser.XbmcMetadata
* Enable TreatWarningsAsErrors for MediaBrowser.XbmcMetadata
* Add analyzers to MediaBrowser.WebDashboard
* Enable TreatWarningsAsErrors for MediaBrowser.WebDashboard
* Disable SA1600 in favor of CS1591
</content>
</entry>
<entry>
<title>Enable TreatWarningsAsErrors for some projects</title>
<updated>2019-12-13T19:11:37Z</updated>
<author>
<name>Bond_009</name>
<email>bond.009@outlook.com</email>
</author>
<published>2019-12-13T19:11:37Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=5a8e972952e45ff7361d8370e289eb44911b914c'/>
<id>urn:sha1:5a8e972952e45ff7361d8370e289eb44911b914c</id>
<content type='text'>
Analyzers are only run in debug build, so setting TreatWarningsAsErrors
for release build will catch the compiler warnings until we resolve all
analyzer warnings.
</content>
</entry>
</feed>
