Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PVR] Separate GUI from PVR core: remove CFileItem usage from core #16213

Merged
merged 6 commits into from May 29, 2019

Conversation

ksooo
Copy link
Member

@ksooo ksooo commented May 28, 2019

CFileItem and derived classes like CFileItemList should not be used in PVR core. CFileItem is derived from CGUIListItem and

  • is carrying GUI data like layouts
  • is accessing global gfx mutex
  • is accessing PVR and other globals
  • instance size is fairly large (compared to PVR core instances)

All this can lead to problems, mainly deadlocks and waste of system resources.

I carefully runtime-tested this changes on macOS and Android. No problems found.

@Jalle19 pleaes review. I tried to build logical units per commit.

ksooo added 6 commits May 28, 2019 14:55
…tep 1.5: directory listings (forgot to remove one last occurence in step 1).
…tep 2: PVR core must not create new CFileItem instances.
…tep 3: No more CFileItem usage in 'channels'.
…tep 4: No more CFileItem usage in 'recordings'.
…tep 5: No more CFileItem usage in CPVRClient.
@ksooo ksooo added Type: Cleanup non-breaking change which removes non-working or unmaintained functionality Component: PVR v19 Matrix labels May 28, 2019
@ksooo ksooo added this to the Matrix 19.0-alpha 1 milestone May 28, 2019
@ksooo ksooo requested a review from Jalle19 May 28, 2019 14:03
@ksooo
Copy link
Member Author

ksooo commented May 28, 2019

jenkins build this please

Copy link
Member

@Jalle19 Jalle19 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Skimmed through it, probably fine since you've tested it

@ksooo ksooo merged commit e5c8a9e into xbmc:master May 29, 2019
@ksooo ksooo deleted the pvr-no-fileitems-in-core branch May 29, 2019 08:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: PVR Type: Cleanup non-breaking change which removes non-working or unmaintained functionality v19 Matrix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants