summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/ScriptInterpreter/Python
diff options
context:
space:
mode:
authorLawrence D'Anna <lawrence_danna@apple.com>2019-10-17 01:35:22 +0000
committerLawrence D'Anna <lawrence_danna@apple.com>2019-10-17 01:35:22 +0000
commit0f783599a4c645d8ae826f990f7b938fac6e5dae (patch)
tree9792f137ff09b6b8b90cbcf3d75dd8a98999ea25 /lldb/source/Plugins/ScriptInterpreter/Python
parent56ee31964f5a57621953eacdc8458bd41dfc4154 (diff)
downloadbcm5719-llvm-0f783599a4c645d8ae826f990f7b938fac6e5dae.tar.gz
bcm5719-llvm-0f783599a4c645d8ae826f990f7b938fac6e5dae.zip
delete SWIG typemaps for FILE*
Summary: The SWIG typemaps for FILE* are no longer used, so this patch deletes them. Reviewers: JDevlieghere, jasonmolenda, labath Reviewed By: labath Subscribers: lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D68963 llvm-svn: 375073
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python')
-rw-r--r--lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp19
-rw-r--r--lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h14
-rw-r--r--lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp9
3 files changed, 7 insertions, 35 deletions
diff --git a/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp b/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
index e2112b15008..8c0618cd91a 100644
--- a/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
+++ b/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
@@ -837,25 +837,6 @@ bool PythonFile::Check(PyObject *py_obj) {
#endif
}
-FileUP PythonFile::GetUnderlyingFile() const {
- if (!IsValid())
- return nullptr;
-
- // We don't own the file descriptor returned by this function, make sure the
- // File object knows about that.
- PythonString py_mode = GetAttributeValue("mode").AsType<PythonString>();
- auto options = File::GetOptionsFromMode(py_mode.GetString());
- if (!options) {
- llvm::consumeError(options.takeError());
- return nullptr;
- }
- auto file = std::unique_ptr<File>(new NativeFile(
- PyObject_AsFileDescriptor(m_py_obj), options.get(), false));
- if (!file->IsValid())
- return nullptr;
- return file;
-}
-
namespace {
class GIL {
public:
diff --git a/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h b/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h
index 43ffd8d339b..255fa06c057 100644
--- a/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h
+++ b/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h
@@ -637,20 +637,6 @@ public:
static llvm::Expected<PythonFile> FromFile(File &file,
const char *mode = nullptr);
- // FIXME delete this after FILE* typemaps are deleted
- // and ScriptInterpreterPython is fixed
- PythonFile(File &file, const char *mode = nullptr) {
- auto f = FromFile(file, mode);
- if (f)
- *this = std::move(f.get());
- else {
- Reset();
- llvm::consumeError(f.takeError());
- }
- }
-
- lldb::FileUP GetUnderlyingFile() const;
-
llvm::Expected<lldb::FileSP> ConvertToFile(bool borrowed = false);
llvm::Expected<lldb::FileSP>
ConvertToFileForcingUseOfScriptingIOMethods(bool borrowed = false);
diff --git a/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp b/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
index d773fd8d258..70654a42384 100644
--- a/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
+++ b/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
@@ -651,10 +651,15 @@ bool ScriptInterpreterPythonImpl::SetStdHandle(FileSP file_sp,
PythonDictionary &sys_module_dict = GetSysModuleDictionary();
+ auto new_file = PythonFile::FromFile(file, mode);
+ if (!new_file) {
+ llvm::consumeError(new_file.takeError());
+ return false;
+ }
+
save_file = sys_module_dict.GetItemForKey(PythonString(py_name));
- PythonFile new_file(file, mode);
- sys_module_dict.SetItemForKey(PythonString(py_name), new_file);
+ sys_module_dict.SetItemForKey(PythonString(py_name), new_file.get());
return true;
}
OpenPOWER on IntegriCloud