api: copy entry object before sending, to keep id
### Fixes
- - Fix empty title and domain_name when exception is thrown during fetch [#3442](https://github.com/wallabag/wallabag/pull/3442)
+- Fix empty title and domain_name when exception is thrown during fetch [#3442](https://github.com/wallabag/wallabag/pull/3442)
+- api: copy entry object before sending, to keep id [#3516](https://github.com/wallabag/wallabag/pull/3516)
### Changes
$this->validateAuthentication();
$this->validateUserAccess($entry->getUser()->getId());
+ // We copy $entry to keep id in returned object
+ $e = $entry;
+
$em = $this->getDoctrine()->getManager();
$em->remove($entry);
$em->flush();
// entry deleted, dispatch event about it!
$this->get('event_dispatcher')->dispatch(EntryDeletedEvent::NAME, new EntryDeletedEvent($entry));
- return $this->sendResponse($entry);
+ return $this->sendResponse($e);
}
/**
$this->assertSame($entry->getTitle(), $content['title']);
$this->assertSame($entry->getUrl(), $content['url']);
+ $this->assertSame($entry->getId(), $content['id']);
// We'll try to delete this entry again
$this->client->request('DELETE', '/api/entries/' . $entry->getId() . '.json');