@@ -223,36 +223,37 @@ public function getCasts()
223
223
/**
224
224
* {@inheritdoc}
225
225
*/
226
- public function originalIsEquivalent ($ key, $ current )
226
+ public function originalIsEquivalent ($ key )
227
227
{
228
228
if (! array_key_exists ($ key , $ this ->original )) {
229
229
return false ;
230
230
}
231
231
232
- $ original = $ this ->getOriginal ($ key );
232
+ $ attribute = Arr::get ($ this ->attributes , $ key );
233
+ $ original = Arr::get ($ this ->original , $ key );
233
234
234
- if ($ current === $ original ) {
235
+ if ($ attribute === $ original ) {
235
236
return true ;
236
237
}
237
238
238
- if (null === $ current ) {
239
+ if (null === $ attribute ) {
239
240
return false ;
240
241
}
241
242
242
243
if ($ this ->isDateAttribute ($ key )) {
243
- $ current = $ current instanceof UTCDateTime ? $ this ->asDateTime ($ current ) : $ current ;
244
+ $ attribute = $ attribute instanceof UTCDateTime ? $ this ->asDateTime ($ attribute ) : $ attribute ;
244
245
$ original = $ original instanceof UTCDateTime ? $ this ->asDateTime ($ original ) : $ original ;
245
246
246
- return $ current == $ original ;
247
+ return $ attribute == $ original ;
247
248
}
248
249
249
- if ($ this ->hasCast ($ key )) {
250
- return $ this ->castAttribute ($ key , $ current ) ===
250
+ if ($ this ->hasCast ($ key, static :: $ primitiveCastTypes )) {
251
+ return $ this ->castAttribute ($ key , $ attribute ) ===
251
252
$ this ->castAttribute ($ key , $ original );
252
253
}
253
254
254
- return is_numeric ($ current ) && is_numeric ($ original )
255
- && strcmp ((string ) $ current , (string ) $ original ) === 0 ;
255
+ return is_numeric ($ attribute ) && is_numeric ($ original )
256
+ && strcmp ((string ) $ attribute , (string ) $ original ) === 0 ;
256
257
}
257
258
258
259
/**
0 commit comments