File tree 2 files changed +7
-35
lines changed
clusters/door-lock-server
2 files changed +7
-35
lines changed Original file line number Diff line number Diff line change @@ -1003,17 +1003,10 @@ void DoorLockServer::setWeekDayScheduleCommandHandler(chip::app::CommandHandler
1003
1003
return ;
1004
1004
}
1005
1005
1006
- // appclusters, 5.2.4.14 - spec does not allow setting the schedule for multiple days in the bitmask
1007
- int setBitsInDaysMask = 0 ;
1008
- uint8_t rawDaysMask = daysMask.Raw ();
1009
- for (size_t i = 0 ; i < sizeof (rawDaysMask) * 8 ; ++i)
1010
- {
1011
- setBitsInDaysMask += rawDaysMask & 0x1 ;
1012
- rawDaysMask = static_cast <uint8_t >(rawDaysMask >> 1 );
1013
- }
1006
+ uint8_t rawDaysMask = daysMask.Raw ();
1014
1007
1015
- // TODO: Check that bits are within range
1016
- if (setBitsInDaysMask == 0 || setBitsInDaysMask > 1 )
1008
+ // Check that bits are within range
1009
+ if (( 0 == rawDaysMask) || (rawDaysMask & 0x80 ) )
1017
1010
{
1018
1011
ChipLogProgress (Zcl,
1019
1012
" [SetWeekDaySchedule] Unable to add schedule - daysMask is out of range "
Original file line number Diff line number Diff line change @@ -215,7 +215,7 @@ tests:
215
215
response :
216
216
error : INVALID_COMMAND
217
217
218
- - label : " Create Week Day schedule for Sunday and Monday "
218
+ - label : " Create Week Day schedule with Invalid day "
219
219
command : " SetWeekDaySchedule"
220
220
arguments :
221
221
values :
@@ -224,28 +224,7 @@ tests:
224
224
- name : " UserIndex"
225
225
value : 1
226
226
- name : " DaysMask"
227
- value : 0x3 # (Sunday and Monday)
228
- - name : " StartHour"
229
- value : 15
230
- - name : " StartMinute"
231
- value : 16
232
- - name : " EndHour"
233
- value : 18
234
- - name : " EndMinute"
235
- value : 00
236
- response :
237
- error : INVALID_COMMAND
238
-
239
- - label : " Create Week Day schedule for Sunday Wednesday and Saturday"
240
- command : " SetWeekDaySchedule"
241
- arguments :
242
- values :
243
- - name : " WeekDayIndex"
244
- value : 1
245
- - name : " UserIndex"
246
- value : 1
247
- - name : " DaysMask"
248
- value : 0x49 # (Sunday, Wednesday and Saturday)
227
+ value : 0x80 # (Not a valid day between Sunday thru Saturday)
249
228
- name : " StartHour"
250
229
value : 15
251
230
- name : " StartMinute"
@@ -1705,7 +1684,7 @@ tests:
1705
1684
- name : " UserIndex"
1706
1685
value : 2
1707
1686
- name : " DaysMask"
1708
- value : 0x40
1687
+ value : 0x49 # (Sunday, Wednesday and Saturday)
1709
1688
- name : " StartHour"
1710
1689
value : 23
1711
1690
- name : " StartMinute"
@@ -1732,7 +1711,7 @@ tests:
1732
1711
- name : " Status"
1733
1712
value : 0x0
1734
1713
- name : " DaysMask"
1735
- value : 0x40
1714
+ value : 0x49
1736
1715
- name : " StartHour"
1737
1716
value : 23
1738
1717
- name : " StartMinute"
You can’t perform that action at this time.
0 commit comments