Merge pull request #11247 from german77/pctl
service: pctl: Partially revert 11221
This commit is contained in:
		@@ -152,7 +152,7 @@ private:
 | 
			
		||||
        if (pin_code[0] == '\0') {
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
        if (!restriction_settings.is_free_communication_default_on) {
 | 
			
		||||
        if (!settings.is_free_communication_default_on) {
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
        // TODO(ogniK): Check for blacklisted/exempted applications. Return false can happen here
 | 
			
		||||
@@ -168,21 +168,21 @@ private:
 | 
			
		||||
        if (pin_code[0] == '\0') {
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
        if (!restriction_settings.is_stero_vision_restricted) {
 | 
			
		||||
        if (!settings.is_stero_vision_restricted) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
        return true;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void SetStereoVisionRestrictionImpl(bool is_restricted) {
 | 
			
		||||
        if (restriction_settings.disabled) {
 | 
			
		||||
        if (settings.disabled) {
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (pin_code[0] == '\0') {
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        restriction_settings.is_stero_vision_restricted = is_restricted;
 | 
			
		||||
        settings.is_stero_vision_restricted = is_restricted;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void Initialize(HLERequestContext& ctx) {
 | 
			
		||||
@@ -430,7 +430,7 @@ private:
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        rb.Push(ResultSuccess);
 | 
			
		||||
        rb.Push(restriction_settings.is_stero_vision_restricted);
 | 
			
		||||
        rb.Push(settings.is_stero_vision_restricted);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void ResetConfirmedStereoVisionPermission(HLERequestContext& ctx) {
 | 
			
		||||
@@ -460,22 +460,28 @@ private:
 | 
			
		||||
        bool stereo_vision{};
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    // This is nn::pctl::RestrictionSettings
 | 
			
		||||
    struct RestrictionSettings {
 | 
			
		||||
    struct ParentalControlSettings {
 | 
			
		||||
        bool is_stero_vision_restricted{};
 | 
			
		||||
        bool is_free_communication_default_on{};
 | 
			
		||||
        bool disabled{};
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    // This is nn::pctl::RestrictionSettings
 | 
			
		||||
    struct RestrictionSettings {
 | 
			
		||||
        u8 rating_age;
 | 
			
		||||
        bool sns_post_restriction;
 | 
			
		||||
        bool free_communication_restriction;
 | 
			
		||||
    };
 | 
			
		||||
    static_assert(sizeof(RestrictionSettings) == 0x3, "RestrictionSettings has incorrect size.");
 | 
			
		||||
 | 
			
		||||
    // This is nn::pctl::PlayTimerSettings
 | 
			
		||||
    struct PlayTimerSettings {
 | 
			
		||||
        // TODO: RE the actual contents of this struct
 | 
			
		||||
        std::array<u8, 0x34> settings;
 | 
			
		||||
        std::array<u32, 13> settings;
 | 
			
		||||
    };
 | 
			
		||||
    static_assert(sizeof(PlayTimerSettings) == 0x34, "PlayTimerSettings has incorrect size.");
 | 
			
		||||
 | 
			
		||||
    States states{};
 | 
			
		||||
    ParentalControlSettings settings{};
 | 
			
		||||
    RestrictionSettings restriction_settings{};
 | 
			
		||||
    std::array<char, 8> pin_code{};
 | 
			
		||||
    Capability capability{};
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user