fune/dom/fs/child/FileSystemWritableFileStreamChild.h
Jari Jalkanen 5c00746ef4 Bug 1840184 - Remove redundant FileSystemWritableFileStreamChild shutdown check. r=dom-storage-reviewers,janv
Both use cases of the getter of the WritableFileStream pointer are already handling the case where the result is null. In the debug-only check of whether all streams are closed, null result is possible, as evidenced by the bug. When the streams are closed at shutdown, we assume that closing takes place only once and the result is not null but since the second closing can be handled as a no-op, it is not necessary enforce this expectation, following declarative API design.

Differential Revision: https://phabricator.services.mozilla.com/D202589
2024-02-28 08:48:57 +00:00

41 lines
1.3 KiB
C++

/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef DOM_FS_CHILD_FILESYSTEMWRITABLEFILESTREAM_H_
#define DOM_FS_CHILD_FILESYSTEMWRITABLEFILESTREAM_H_
#include "mozilla/dom/PFileSystemWritableFileStreamChild.h"
namespace mozilla::dom {
class FileSystemWritableFileStream;
class FileSystemWritableFileStreamChild
: public PFileSystemWritableFileStreamChild {
public:
FileSystemWritableFileStreamChild();
NS_INLINE_DECL_REFCOUNTING(FileSystemWritableFileStreamChild, override)
FileSystemWritableFileStream* MutableWritableFileStreamPtr() const {
return mStream;
}
void SetStream(FileSystemWritableFileStream* aStream);
void ActorDestroy(ActorDestroyReason aWhy) override;
private:
virtual ~FileSystemWritableFileStreamChild();
// Use a weak ref so actor does not hold DOM object alive past content use.
// The weak reference is cleared in FileSystemWritableFileStream::LastRelease.
FileSystemWritableFileStream* MOZ_NON_OWNING_REF mStream;
};
} // namespace mozilla::dom
#endif // DOM_FS_CHILD_FILESYSTEMWRITABLEFILESTREAM_H_